On Tue, 24 Jun 2025, Martin Storsjö wrote:
On Tue, 24 Jun 2025, Pali Rohár wrote:
When I run tests manually at the time of sending those my changes, they
passed on 32-bit msvcrt locally.
FWIW, you probably have old headers lying around in your sysroot if you don't
notice the issue with the missing _mingw_print_push.h header, which has been
removed since 2018.
Maybe the test suite is using system mingw-w64 libs instead of locally
compiled? And it is needed to first install mingw-w64 libs before
running test suite? Just guessing.
Sorry about this, this was indeed the case. I did install the headers, but
the build system had decided to install the files into <prefix>/lib32 instead
of the expected <prefix>/lib directory, for 32 bit cases, so those cases
didn't use the newly built files.
(And the issues with ucrtbase also seemed to be a case of this.)
With this fixed, most tests do build correctly. tstmain_sys_xxx.c fails to
link in UCRT mode, and t_ansi_io.c still depends on a header removed in 2018
though.
With this in place, I did see that a recently pushed patch actually did
regress the t_stat_slash test; I'll send a patch for that too.
After extending the testing to armv7 and aarch64 too, I run into errors
that fseeko64 is missing in libmsvcrt-os.a on armv7 and aarch64.
And on aarch64 on ucrt, t_aligned_alloc ends up with this failure:
../testcases/t_aligned_alloc.c:97: _aligned_msize: ptr 0x000001612540FA80
has incorrect size 2000
So it would seem that _aligned_realloc() to shrink an allocation didn't
actually choose to shrink it at all.
// Martin
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public