On Sunday, 12 June 2016 at 04:19:33 UTC, Joerg Joergonson wrote:
2. I got an error that I don't get with dmd:

Error: incompatible types for ((ScreenPainter) !is (null)): cannot use '!is' with types

and I have defined ScreenPainter in my code. It is also in arsd's simpledisplay. I do not import simpledisplay directly:

It's probably the difference of the recent import rules bug fix. gamehelpers public imports simpledisplay, so its ScreenPainter will be visible there too.

You can probably just exclude it from the import by doing selective:

import arsd.gamehelpers : create2dWindow;

and comma list anything else you use from there (probably just OpenGlTexture, it is a small module).


But yeah, weird that it is different, but this was REALLY recently changed so if the release differs by just one month in version it could account for the difference.

Although, If I set the subsystem to windows I then get the error

There's another MSFT library needed there passing `-L/entry:mainCRTStartup` to the build should do it.

dmd 32 bit has its own library so it isn't needed there, but dmd 64 bit and ldc both I believe need the entry point.

Reply via email to