SiegeLord / Tango-D2

A port of the Tango library to D2
http://siegelord.github.com/Tango-D2/
Other
90 stars 38 forks source link

Compilation fixes for DMD 2.083.0 #95

Closed dhasenan closed 5 years ago

dhasenan commented 5 years ago
dhasenan commented 5 years ago

I know that's somewhat behind the times, but little by little, right?

SiegeLord commented 5 years ago

Another note so I don't forget, the unitester segfault happens in Layout.process because _ti argument is NULL.

dhasenan commented 5 years ago

Looks like dub build and dub test doesn't do the same build and test as the makefile. Should probably fix that at some point.

Anyway, I fixed the problems you mentioned. Current problems:

Continuing to look into it.

dhasenan commented 5 years ago

As for the ICE, that seems to have been fixed by 2.083.0. Updated the title and commit info to match.

The minimal reproduction case for that ICE, if we want to try to work around it:

int isNaN(real)
{
    return 0;
}

ulong getNaNPayload(real x)
{
    isNaN(x);
    ulong m = *cast(ulong*)&x;
    return 0;
}
SiegeLord commented 5 years ago

Alright, this looks good to me (somehow some unittests were hanging, but I think that's some race condition in the unittester somehow). Is this all set to merge?

dhasenan commented 5 years ago

Sorry, yes, this should be good to go.

SiegeLord commented 5 years ago

Alright, looks good to me! Thanks @dhasenan, this was amazing work. I appreciate it.