What gives, Microsoft C++ compiler team?
-
My htcw_gfx library used to only compile with GCC and Clang despite it being standard C++. I could never figure out why I got pages of warnings, and why I was getting syntax errors - yes, syntax errors, under MS's compiler. I even posted about it here at one point, ranting about how they weren't adhering to the standard. I was gently corrected? here by several readers, and came away thinking if nothing else that the way they interpret the standards was infuriating. Well, suddenly I fire up 2022 and the C++ compiler eats my code near perfectly (one small issue I overlooked at one point, corrected in seconds) Tell me that Microsoft implemented the C++17 standard properly back in 2019? I'm doubting it again.
Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix
-
My htcw_gfx library used to only compile with GCC and Clang despite it being standard C++. I could never figure out why I got pages of warnings, and why I was getting syntax errors - yes, syntax errors, under MS's compiler. I even posted about it here at one point, ranting about how they weren't adhering to the standard. I was gently corrected? here by several readers, and came away thinking if nothing else that the way they interpret the standards was infuriating. Well, suddenly I fire up 2022 and the C++ compiler eats my code near perfectly (one small issue I overlooked at one point, corrected in seconds) Tell me that Microsoft implemented the C++17 standard properly back in 2019? I'm doubting it again.
Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix
MS C++ compiler has been compliant with C++17 since Visual Studio 2019. The only difference in VS2022 is the default conformance mode is "yes /permissive-" (See my screenshot below). To compile C++17 correctly, you have turn this on in VS2019 whose default is No conformance. [https://imagizer.imageshack.com/img922/451/lw1LXR.png\](https://imagizer.imageshack.com/img922/451/lw1LXR.png)
-
MS C++ compiler has been compliant with C++17 since Visual Studio 2019. The only difference in VS2022 is the default conformance mode is "yes /permissive-" (See my screenshot below). To compile C++17 correctly, you have turn this on in VS2019 whose default is No conformance. [https://imagizer.imageshack.com/img922/451/lw1LXR.png\](https://imagizer.imageshack.com/img922/451/lw1LXR.png)
Wasn't that. I tried both settings just now. There's a small chance I wasn't using 2019 last time - perhaps an earlier version? But I'm pretty sure it was 2019.
Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix