4 ms·
Why not go for C++17 already? C++14 seems pretty arbitrary, AFAIK C++17 is already supported by GCC, clang and MSVC fully [0]. It's also now the default dialect
by doodlesdev 4y ago
Why not go for C++17 already? C++14 seems pretty arbitrary, AFAIK C++17 is already supported by GCC, clang and MSVC fully [0]. It's also now the default dialect in a few compilers including GCC. Meanwhile C++20 isn't really well supported at all in the moment [1] so it makes sense waiting more for it, even though features such as Concepts and Modules should simplify library code a lot and make some tasks much more trivial.
[0]: https://en.cppreference.com/w/cpp/compiler_support/17 https://en.cppreference.com/w/cpp/compiler_support/17
[1]: https://en.cppreference.com/w/cpp/compiler_support/20 https://en.cppreference.com/w/cpp/compiler_support/20
- pclmulqdq 4y agoThe argument I can see is that 14 is the minimum feature set that every engineer knows how to use, and before 14 you are missing some of the "core" features of the language that are widely used today. By contrast, some things in 17 are still foreign to some engineers, although there are no real "breaking" changes from 14 to 17 (in terms of the model of how to think about the language). 20 and 23 are a bit of a mess in terms of support.
- Gigachad 4y ago6 years is more than enough time to get ready for the update. If you can’t work out how to use c++ 17 then that isn’t the problem of library devs.
- pjmlp 4y agoLast time I read about it, PlayStation SDK was on C++14, and they aren't the only platform in such state.
- Gigachad 4y agoUnless Sony is financially contributing, I don’t see why a 3rd party would care that the PlayStation sdk is running legacy software.
- pjmlp 4y agoRight, same can be said regarding current state of ISO support on free beer compilers, now limping behind VC++. So taken to extreme, some Boost libraries might become VC++ only, for authors that decide to go fully on ISO C++ 20 and 23.
- doodlesdev 4y agoWhat do you mean free beer compilers are limping behind VC++? The situation (as always) seems exactly the contrary. [0] [0]: https://en.cppreference.com/w/cpp/compiler_support/23 https://en.cppreference.com/w/cpp/compiler_support/23
- pjmlp 4y agoThey would do better to finalise their ongoing issues with C++20 features support, instead of spending valuable resources on C++23. See their C++20 support versus VC++.
- pjmlp 4y agoAs you can see by those tables, there are other compilers in the world, and those tables don't even include embedded platforms.
- doodlesdev 4y agoI don't think embedded platform code uses Boost though, right?