Anton Pevtsov wrote:
Martin, what about this issue?
I tried to rebuild all configurations and found that release are still
broken.
Maybe, we should open a jira issue to not forget about the problem?
Sure, it can't hurt :)
Or does this issue appear on my side only?
I suspect not. I'm behind on a number of things and this is
one of them. I'll try to get caught up by Monday. Thanks for
the reminder!
Martin
Thanks,
Anton Pevtsov
-----Original Message-----
From: Martin Sebor [mailto:[EMAIL PROTECTED]
Sent: Friday, April 21, 2006 23:03
To: [email protected]
Subject: Re: release configurations (8d, 8s, 12d, 12s) fail to compile
on Windows, MSVC 7.1
Anton Pevtsov wrote:
Unfortunately, I didn't build release configurations during long
periof of time.
But I suspect this commit:
http://svn.apache.org/viewcvs?rev=374551&view=rev
[...]
You're most likely right.
It seems that there is a conflict between declarations of the swprintf
from stdio.h and this one.
The stdio.h contains
...
/* This non-standard definition exists for historical reasons to avoid
breaking old code */ _CRTIMP int __cdecl swprintf(wchar_t *, const
wchar_t *, ...); #ifdef __cplusplus
/* For C++ we have an overloaded version with the standard definition
*/
extern "C++" _CRTIMP int __cdecl swprintf(wchar_t *, size_t, const
wchar_t *, ...);
#endif
...
Ugh. What a mess!
It is possible to avoid the error (but not warning for dll's) using
extern "C++" instead of extern "C" to allow overloading, but I am not
sure that this way is correct.
I suspect that's what we'll have to do. I.e., hardcode this into our
<cstdio> header for Windows/MSVC.
The same is true for vswprintf and wctomb functions.
Let me look into it. Strangely, I don't see it in our nightly builds.
Martin