http://d.puremagic.com/issues/show_bug.cgi?id=9021
Malte Skarupke <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID --- Comment #2 from Malte Skarupke <[email protected]> 2012-11-13 18:01:02 PST --- (In reply to comment #1) > (In reply to comment #0) > > int main() > > { > > class C { } > > C c = new C; > > C other = *cast(C *)cast(size_t) &c; > > assert(&other == &c); > > return 0; > > } > > > > That assert fires on DMD 2.060 > > > > I need this to interface with a C library where I have to pass a pointer as > > two > > ints and then cast them back in a callback. > > You are comparing references. Those are two unique references to the same > object. If you want to compare the actual object address they point to use: > > cast(void*)other == cast(void*)c; Ah that explains it. Thanks! -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
