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.

// Martin

_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to