On Saturday, 29 December 2012 at 23:58:49 UTC, Jonathan M Davis
wrote:
That would be your problem. It's not fixed in 2.060. It was
fixed since then. Use the latest from git or the current beta.
Hmm alright, I've installed the beta. New problems are creeping
up curiously enough. There seems to be an invisibly added pointer
'this', which then makes a union break while using bitfields.
This didn't break before...
Unless I use the traits it doesn't show the problem. Any
thoughts?
[code]
static assert(__traits(compiles, {
union xxx {
int i;
mixin("int geti() @safe const nothrow pure {return i;}void
seti(int ii) @safe pure nothrow {i = ii;}");
}
}));
[/code]
output:
test.d(??): Error: static assert (__traits(compiles,delegate
pure nothrow @safe
void()
{
union xxx
{
int i;
mixin("int geti() @safe const nothrow pure {return i;}void
seti(int ii) @safe pu
re nothrow {i = ii;}");
void* this;
}
}
)) is false