On Wed Feb 4 12:29:06 2026 +0000, Jacek Caban wrote:
I think we should just accept that, when linking in MSVC mode, GCC-style constructors will not work. We could probably just emit fake `__CTOR_LIST__`/`__DTOR_LIST__` symbols in winebuild to make crt happy. (Another possibility would be to implement those on top of the existing `.CRT` section in a separate object file, which we'd pull only for mingw targets. I'm not sure if it'd be worth complications.) hi. for MSVC mode, this MR uses `-alternatename` to define fallback `__CTOR_LIST__`/`__DTOR_LIST__`, so it's working. this undefined symbols problem comes from using llvm in MinGW mode.
we are using `lld-link` with llvm-mingw, which according to Martin doesn't define some MinGW specific symbols. so sounds like maybe we are supposed to use `lld-link` for llvm MSVC, and `ld.lld` for llvm mingw? -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9758#note_128764