Changing default C++ mode to C++20

Personally (not speaking as a maintainer), I don’t think we’re ready yet. We do not yet conform to C++20 (https://clang.llvm.org/cxx_status.html), so it seems premature for us to switch to that as the default language mode upstream until we’re actually feature complete and stable.

But you’re right that we’re going to change the default at some point and we should prepare for it. So it might make sense for us to put up a post-commit build bot where C++20 is the default language mode and start fixing up those tests. The bot will help ensure we don’t make the migration harder on ourselves in the future. IIRC, we’ve already got a bot (I think from Sony?) that defaults to C99 instead of C17 and that’s been helpful in catching those kinds of issues.

2 Likes