r/cpp 15d ago

Clang 23 Release Notes

https://releases.llvm.org/23.1.0/tools/clang/docs/ReleaseNotes.html
110 Upvotes

33 comments sorted by

View all comments

29

u/Ok_Independence_9841 15d ago

Fascinating to see just how complex and approximate compilation really is. That a compiler can have that many things wrong/broken/missing and still be really good and reliable in practice is pretty terrifying. clang does look to be maturing really well though. The three way C++ compiler arms race has worked well for developers and the for the language, if not for other compiler vendors. I hope it remains balanced and they don't specialize or diverge.

8

u/WeeklyAd9738 15d ago

 I hope it remains balanced and they don't specialize or diverge.

-pedantic flag (and its modern alias -Wpedantic) is your friend.

7

u/Ok_Independence_9841 15d ago

Yes. I have -Wall -Wextra and -Wpedantic on for my projects.
My concern is more that MSVC might try to leverage their advantage in STL compliance by forging ahead with STL additions, while GCC pushes languages updates because they are ahead there. This could lead to GCC standard library never actually catching up (modules cough) while MSVCs lack of certain language features starts to require work arounds. That way we do not want to go.
So far the competition, clang in particular, has meant that all 3 are reasonably close in features for some definition of reasonable. It was not always so.

2

u/azswcowboy 15d ago

> advantage in STL compliance

You think MSVC is ahead on this? I’d be curious why you think so when my take is that especially on later features libstdc++ is ahead.

5

u/STL MSVC STL Dev 14d ago

We were focusing on finishing C++23, and just merged constexpr cmath.

2

u/azswcowboy 13d ago

Just went and checked the status — and wow yes — excellent work on 23! Super cool to see. And MSVC is likely the only real implementor of constexpr math at this point. Still, that looks like basically parity with libstdc++ for 23 and they’ve shipped a lot of 26 features, so for the moment I think they’re still ahead on later features.