digitalmars.D.learn - extern and opaque structs
- James Miller (11/11) May 02 2012 I'm doing C bindings and I have an opaque struct and an extern'd
- Jacob Carlborg (6/16) May 03 2012 This doesn't work:
I'm doing C bindings and I have an opaque struct and an extern'd variable of the type of that struct. The problem is that dmd is complaining that the struct has no definition (which is true). Making it a pointer works (expected) but i can't do that because the interface is expecting an full struct. Adding __gshared doesn't help. I assume this is bug, since usage of extern means that I don't need to know the size, since it will be allocated in the C code, not the D code. -- James Miller
May 02 2012
On 2012-05-03 07:00, James Miller wrote:I'm doing C bindings and I have an opaque struct and an extern'd variable of the type of that struct. The problem is that dmd is complaining that the struct has no definition (which is true). Making it a pointer works (expected) but i can't do that because the interface is expecting an full struct. Adding __gshared doesn't help. I assume this is bug, since usage of extern means that I don't need to know the size, since it will be allocated in the C code, not the D code. -- James MillerThis doesn't work: struct Foo; extern (C) extern Foo foo; -- /Jacob Carlborg
May 03 2012