dmd 1.064 and 2.049 release
osa
osa at aso.osa
Fri Sep 17 13:47:00 PDT 2010
On 09/17/2010 03:22 PM, dsimcha wrote:
> I agree the error message is obtuse, but I don't think this code is supposed to
> work because foo is not a type. This code does work:
>
> import std.traits;
> void foo() {}
> void main() {
> static assert( ! hasUnsharedAliasing!(typeof(foo)) );
> }
My bad. However, old code used to work with 2.048, with hasLocalAliasing.
Now the next problem. I do not think there is unshared aliasing here:
----
import std.traits;
struct Foo
{
void function() func;
}
void main()
{
static assert( ! hasUnsharedAliasing!Foo, "struct Foo has unshared
aliasing" );
}
----
but it fails to compile. As far as I understand, functions (unlike
delegates) do not have any shared aliasing but hasUnsharedAliasing
thinks they do.
More information about the Digitalmars-d-announce
mailing list