Closed Bug 550401 Opened 12 years ago Closed 12 years ago
warning C4273: 'moz
_strdup' : inconsistent dll linkage (string .h relating to mozalloc .h)
C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE\string.h(207) : warning C4273: 'moz_strdup' : inconsistent dll linkage c:\programming\objectdirs\mozilla\trunk\suiterunnerdebug\mozilla\dist\include\mozilla/mozalloc.h(138) : see previous definition of 'moz_strdup' Per IRC with cjones, the issue is that the MSVC headers declare strdup as dllimport and we are dllexport.
Since this code has been working with dllexport, I would assume that MSVC treats undefined dllexport functions as dllimport at link time, which makes me question the usefulness of dllimport. But that's neither here nor there.
roughly you need a macro which results in DLL_EXPORT when used by mozalloc.cpp but DLL_IMPORT when included everywhere else. we have loads of macros for this.
Assignee: nobody → timeless
Status: NEW → ASSIGNED
Attachment #430584 - Flags: review?(benjamin)
Comment on attachment 430584 [details] [diff] [review] proposal +# ifdef MOZALLOC_DONT_DEFINE_MACRO_WRAPPERS +# define MOZALLOC_METHOD __declspec(dllexport) +# else +# define MOZALLOC_METHOD __declspec(dllexport) +# endif Pretty sure you meant one of this to be dllimport?
Attachment #430584 - Flags: review?(benjamin) → review-
Will that actually work with the system headers? Along with that fix you might need to wrap the system headers like the WinCE build does (see build/wince/shunt, iirc), to do things like #define strdup orig_strdup #include <sdk_dir/string.h> #undef strdup
12 years ago
Duplicate of this bug: 555387
wfm on windows and linux.
Assignee: timeless → jones.chris.g
Attachment #435804 - Flags: review?(benjamin)
bsmedberg, any chance of getting a quick review on this soonish? Windows devs seem to be waiting with bated breath.
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Attachment #430584 - Attachment is obsolete: true
V.Fixed, per tinderbox. (See bug 558163, just in case.)
Status: RESOLVED → VERIFIED
Target Milestone: --- → mozilla1.9.3a5
You need to log in before you can comment on or make changes to this bug.