On Wed, 24 Apr 2024, Martin Storsjö wrote:
On Mon, 22 Apr 2024, Pali Rohár wrote:
This patch series moves all aliases defined in crtdll.def.in, and
msvcr*.def.in files into one common include file msvcrt-common.def.in.
It reduces duplication of symbol alias definitions by defining symbols
in more declarative manner.
Moving aliases to one place uncovered that some def.in files were
missing some alises (mostly for __ms_* printf/scanf symbols) or some
were incorrectly defined (ctime for 64-bit msvcr90d.def.in was defined
as alias to _ctime32 instead of _ctime64, or _findfirst for 64-bit
msvcr120.def.in was defined as alias to symbol which does _not_ use
32-bit file length).
For reference what this change affects, I'm attaching a difference which
was generated for each CRT def.in file by command ($PLAT: DEF_I386
DEF_X64):
cpp -x c -Wp,-w -undef -P -Imingw-w64-crt/def-include -D$PLAT | sed -E
's/\s*;.*//' | LC_ALL=C sort -u
I presume you didn't diff the changes for ucrtbase.def.in? Because it seems
to be changes that do affect the output from that one, in patch 10/10.
I looked closely at patches 1-9, and they seemed fine, so if you can recheck
that they don't affect the preprocessed output for ucrtbase as well, we could
land them and look at polishing the last one a bit more.
I checked that the output from preprocessing ucrtbase.def.in is unchanged
by patches 1-9, so I pushed them. The output after patch 10 does change
though, as expected, so I'll leave that one for now.
// Martin
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public