On Mon Sep 16 12:39:39 2024 +0000, Rémi Bernon wrote:
I'm not sure to understand what you mean and how this actually should be done. As far as I understand `atexit` is exported by msvcrt, so I expect it to be an actual import that doesn't do the same as the ucrtbase-era `atexit` (ie: only works process-wide, not per-module) which is a symbol that would be provided by winecrt0?
I don't have such MSVC version at hand to check the linking, but the fact that it's exported doesn't mean that an application built with MSVC would import it directly. There are all sorts of tricks that the toolchain can do and I can see it declared without dllimport attribute in pre-UCRT headers too. mingw-w64, for example, provides DLL-aware version of `atexit` even when using msvcrt.dll (or crtdll.dll for that matter).