In December 2017, there was a proposal to switch the default dialect of C++ for LLVM/Clang from GNU++98 to GNU++14, which continued until the LLVM/Clang 15 release a few days ago.and GCC has set the default standard to GNU++ 17.

GNU++ is the C++ language with GNU extensions. For GNU extension features, please refer to GNU extensions to the C and C++ languages

After the release of LLVM 15.0, there is a major change in the LLVM/Clang 16.0 release: GNU++++17 will be the default C++ and ObjectiveC++ version of LLVM.

Clang’s C++17 support is very stable, only minor details need to be fixed. In fact, Apple’s DriverKit has been changed in upstream LLVM (D121911 [Clang] Add DriverKit support), use GNU++17 instead of GNU++14 by default.

At present, the relevant patches have been released, and no emergencies should be a sure thing.

After switching the default version, for C++ codebases that are currently incompatible with C++17 and rely on defaults, you need to set -std=gnu++14 or earlier to maintain compatibility with defaults.

#LLVM #default #standard #changed #C14 #C17 #News Fast Delivery

Leave a Comment

Your email address will not be published. Required fields are marked *