On Tue Jun 4 22:57:24 2024 +0000, cqwrteur wrote:
It was always different in layout. This is a bug for years. UCRT does not have the same layout of FILE compared to msvcrt. However wine just assumes they are the same, which is wrong. MSVC allows you to pass FILE* from a statically linked ucrt to a dynamic linked ucrt provided by the operating system and that is of course causing abi break.
https://github.com/cppfastio/fast_io/blob/next/include/fast_io_legacy_impl/c... I have changed my code to make it clearer. msvcrt and ucrt always use different layouts. This should be clearer for you.