Date: prev next · Thread: first prev next last
2012 Archives by date, by thread · List index


 there is a link error in writerperfect's cdrimport, caused by libcdr/lcms2
libraries. So as far as I understand it, on Windows a library uses dllexport
when it is being built and dllimport when something else is built against it.

Actually, when importing, the dllimport attribute is optional (for
functions, not for data); it only makes the run-time linkage a bit
faster.

The problem here was (as far as I could see) that the stdcall
attribute wasn't used either unless CMS_DLL was defined.

"stdcall" is a calling convention that despite its name is *not* the
"standard" one for C code on (32-bit) Windows. That is "cdecl".
"stdcall" is a historical artefact still used by the core Windows API
itself, and by 3rd-party coders that seem to live in the past. (Yeah,
personal opinion, not "fact".)

(In 64-bit Windows much of the historical baggage has been cleaned out
and there is just one calling convention.)

Pushed your patch, with a clarification of the comment.

--tml

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.