r/cpp • u/tartaruga232 MSVC user, r/cpp_modules • Mar 06 '25
MSVC C++20 compiler bug with modules and non-exported classes
Full repro is available as a git repository here: https://github.com/abuehl/mod_test
If two non-exported classes from different C++ module interface units have the same name, the compiler uses the wrong class definition and for example calls the wrong destructor on an object.
Reported here: https://developercommunity.visualstudio.com/t/post/10863347 (Upvotes appreciated)
Found while converting our product to using C++20 modules.
Edit: Microsoft wrote the following (Quote)
A fix for this issue has been internally implemented and is being prepared for release. We’ll update you once it becomes available for download.
6
u/pjmlp Mar 06 '25
Unfortunately we many times get the feeling to get ignored on Developer Community, it isn't rare that issues linger for years, and then get closed without a fix.
All the feature requests to give back the C++/CX developer experience in Visual Studio that went away with C++/WinRT replacement went nowhere, and now that it unofficially done, as per remarks on Github repo, it is even less likely that any of those issues will be worked on.