Mercurial > projects > ldc
diff dmd/mtype.h @ 379:d632801b15f0
Introducing opaque type to dmd frontent to be used with certain runtime array
and aa args and returns. There are still some bugs with aas.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Tue, 22 Jul 2008 23:06:46 +0200 |
parents | aaade6ded589 |
children | 3545f9eddbfc |
line wrap: on
line diff
--- a/dmd/mtype.h Tue Jul 22 19:24:40 2008 +0200 +++ b/dmd/mtype.h Tue Jul 22 23:06:46 2008 +0200 @@ -97,6 +97,10 @@ Ttypeof, Ttuple, Tslice, + +// LLVMDC + Topaque, + TMAX }; @@ -173,6 +177,10 @@ static ClassDeclaration *typeinfodelegate; static ClassDeclaration *typeinfotypelist; + // LLVMDC, for runtime function signatures that contain + // AAs or arrays of unknown type + static Type* topaque; + static Type *basic[TMAX]; static unsigned char mangleChar[TMAX]; static StringTable stringtable; @@ -660,6 +668,13 @@ void toCBuffer2(OutBuffer *buf, HdrGenState *hgs, int mod); }; +//LLVMDC +struct TypeOpaque : Type +{ + TypeOpaque() : Type(Topaque, NULL) {} + void toCBuffer2(OutBuffer *buf, HdrGenState *hgs, int mod); +}; + /**************************************************************/ //enum InOut { None, In, Out, InOut, Lazy };