On Friday, 7 July 2017 at 13:34:20 UTC, Steven Schveighoffer
wrote:
On 7/7/17 4:21 AM, Nicholas Wilson wrote:
The compiler seems to inset an `assert(this !is null, "null
this");` into my struct.
which is for all intents and purposes.
struct Foo {
Bar b;
}
struct Bar {
void* ptr;
}
What? When is this invariant called? I've never heard of a
hidden invariant being added to structs, structs are supposed
to be free of such things.
I would call such a thing a bug.
-Steve
It was added because someone VIP demanded it I guess.
you can see the assert being added using -vcg-ast ;)