Comment #0 by verylonglogin.reg — 2012-05-21T07:09:46Z
Also without *.def file exported `extern(C)` symbols are prefixed with `_` and require this prefix when obtained with GetProcAddress.
DMD should ether reject compiling DLL without module definition file or tell optling that output is a library.
If there are reasons not to change current behavior, this trap should be mentioned on top of dll.html (preferable in red color) and all D IDE developers should be notified about this issue and catch such case on IDE level.
Comment #1 by verylonglogin.reg — 2012-05-21T07:12:18Z
Created attachment 1109
Test for bug 8130
Comment #2 by verylonglogin.reg — 2012-05-21T07:16:16Z
By the way, this is required *.def file content:
---
LIBRARY
EXETYPE NT
SUBSYSTEM WINDOWS
---
Comment #3 by verylonglogin.reg — 2012-10-10T10:01:09Z
Comment #11 by verylonglogin.reg — 2013-04-08T01:22:28Z
(In reply to comment #10)
> (In reply to comment #9)
> > So, the issue is fixed by documentation improvement. Can you also tell reasons
> > not to change current compiler behavior?
>
> see https://github.com/D-Programming-Language/dmd/pull/1864
Sorry. Missed a compiler change pull.