On Friday, 30 August 2013 at 17:28:12 UTC, Manu wrote:
struct MyStruct; // <- forward declared (opaque type, never defined)

MyStruct*[] arrayOfPointers;

arrayOfPointers ~= null; // appending doesn't work
arrayOfPointers = new MyStruct*[n]; // or just allocating the array doesn't
work either

Complains:
1>code.d(84): Error: struct MyStruct is forward referenced when looking for
'toHash'
1>code.d(84): Error: struct MyStruct is forward referenced when looking for
'opCmp'
1>code.d(84): Error: struct MyStruct is forward referenced when looking for
'toString'
1>code.d(84): Error: struct MyStruct unknown size
1>code.d(84): Error: struct MyStruct no size yet for forward reference
1>code.d(84): Error: struct MyStruct unknown size
1>code.d(84): Error: struct MyStruct no size yet for forward reference

What's the go here?
Why would it need any of that information? It's just a pointer...

http://d.puremagic.com/issues/show_bug.cgi?id=10451

A couple of other forward-ref bugs relating to opaque structs have been recently fixed in git master. If I knew where to look or what to do, I'd fix this one myself. It's an ongoing source of bug reports for Derelict and is bugging the hell out of me.

Reply via email to