Mercurial > projects > ldc
view tests/mini/norun_debug8.d @ 1512:09734fb929c0
Make == for associative arrays test for equality, not identity.
_aaEq was added to runtime/internal/aaA.d which forwards to
TypeInfo_AssociativeArray.equals in genobj.d. On the codegen side, DtoAAEquals
was added to gen/aa.cpp and is called from EqualExp::toElem in gen/toir.cpp.
I assume that the frontend will produce an error if == is used on associative
arrays of different type.
This fixes DMD bug 1429.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Sun, 21 Jun 2009 19:05:24 +0200 |
parents | 925779c19395 |
children |
line wrap: on
line source
module mini.norun_debug8; struct Str { size_t len; void* ptr; } struct Foo { long l; Bar bar; } struct Bar { float x,y,z; Foo* foo; } void main() { Str str; Foo foo; foo.l = 42; foo.bar.y = 3.1415; foo.bar.foo = &foo; int* fail = cast(int*) 1; *fail = 0; }