Hi all, do we have any progress on this matter?
LIU Hao wrote:
> 在 2026-1-26 07:16, Pali Rohár 写道:
>> C++ header files are trying to put quick_exit and at_quick_exit functions
>> into :: or std:: namespace. If those functions are not declared then
>> compilation is failing with error:
>> error: 'at_quick_exit' has not been declared in '::'
>> And it does not matter if those functions are used or not.
>
> Do such headers exist in the wild? Both libstdc++ and libc++ declare them
> conditionally.
Since both libstdc++ and libc++ properly handle this case, and one of reasons
for this change was running tests with msvcrt{20,40}.dll, I think this patch
could be dropped and this change could be delayed until someone gets to
implement quick_exit and at_quick_exit for CRTs which do not have them.
With this, we could also drop the last patch which enables tests for
msvcrt{20,40}.dll on CI. Existing CI run on my fork should prove that fixes in
remaining patches actually fix some things and do not break others.
I like the idea of testing other CRTs on CI, but our approach of statically
linking libstdc++ configured for msvcrt.dll/UCRT, in my opinion, is very
fragile and can break any moment. There should be better ways to achieve this
goal; I can try to figure out something later if we decide to drop the last
patch.
>> commit 8552c9bf4dbd8d83945eff2c5d32b8c81f96fcfd
>> Author: Kirill Makurin <[email protected]>
>> AuthorDate: 2026-01-17 19:43:19 +0900
>> Commit: LIU Hao <[email protected]>
>> CommitDate: 2026-01-26 15:32:34 +0800
>>
>> Try fix C++ linking
>>
>> Signed-off-by: LIU Hao <[email protected]>
>
> Would you elaborate the purpose of this change?
What about this one? Will you re-send this one with a commit message or would
you like to investigate this a little more?
- Kirill Makurin
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public