[ros-bugs] [Bug 6649] PATCH: remove wsprintf from NTDLL spec file.
ReactOS.Bugzilla at reactos.org
ReactOS.Bugzilla at reactos.org
Tue Jul 10 10:17:50 UTC 2012
http://www.reactos.org/bugzilla/show_bug.cgi?id=6649
ThFabba <thfabba at gmx.de> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |thfabba at gmx.de
Status|NEW |RESOLVED
Resolution| |INVALID
--- Comment #6 from ThFabba <thfabba at gmx.de> 2012-07-10 10:17:45 CET ---
The swprintf (wsprintf exists too, but is something different) exported from
msvcrt/crtdll/ntdll has the non-standard (C89 didn't have this function, C99
has it but with a size_t parameter) signature
int swprintf(wchar_t *, const wchar_t *, ...);
(as e.g. proven by the msvcrt:printf winetest)
With MSVC, you must define _CRT_NON_CONFORMING_SWPRINTFS for modern versions to
use this version. Otherwise they default to the C99 version. MSVC applications
normally use neither msvcrt nor ntdll, though.
MinGW defaults to this version as well. If you set it to strict ANSI
compliance, it will (strangely) not declare the function at all (and it links
with msvcrt, which has the non-standard version as described above).
Also, the CMake versions of our applications and DLLs link to msvcrt before
ntdll, and thus usually prefer the msvcrt version. But both are equivalent
anyway, so there shouldn't even be any problem with using ntdll's.
In short, all is correct as-is.
Thus closing as INVALID. If you experience actual application issues or have
further doubts, please feel free to reopen.
--
Configure bugmail: http://www.reactos.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the Ros-bugs
mailing list