For DLLs, what does export actually do?
Ben Davis
entheh at cantab.net
Sun Feb 10 06:11:26 PST 2013
On 10/02/2013 12:39, Benjamin Thaut wrote:
> Am 10.02.2013 13:36, schrieb Ben Davis:
>> With the def, I get lines like "DriverProc = _DriverProc at 20".
>> Without it, I get lines like "_DriverProc at 20 = _DriverProc at 20".
>
> Then you did hit this 3 year old bug:
> http://d.puremagic.com/issues/show_bug.cgi?id=3956
I don't think I did.
That bug applies to cases WITHOUT a .def file, and in that bug, the
actual vs expected output is:
_DriverProc at mangledinsomeway (correct)
modMessage at mangledinsomeway (should be _modMessage at mangledinsomeway)
midMessage at mangledinsomeway (should be _midMessage at mangledinsomeway)
In my case, when I build without a .def file, I get:
_DriverProc at mangledinsomeway
_modMessage at mangledinsomeway
_midMessage at mangledinsomeway
not what I want, but correct as per the spec (I assume). Which would
imply the bug was fixed at some point.
My example of "DriverProc =" (without the _) was WITH a .def file, AND
is what I want - there is no bug as far as I'm aware.
For reference, when Andrej mentioned in earlier bug involving not having
a .def, I thought of this one:
http://www.digitalmars.com/d/archives/digitalmars/D/Windows_DLLs_and_TLS_177871.html
Hope it's clear now?
Ben :)
More information about the Digitalmars-d-learn
mailing list