Neither GCC nor Clang are compliant with standard C++
birdculture
45 points
47 comments
July 19, 2026
Related Discussions
Found 5 related stories in 299.8ms across 14,104 title embeddings via pgvector HNSW
- Why is this program erroneously rejected by three C++ compilers? tornikeo · 24 pts · March 14, 2026 · 51% similar
- C extensions, portability, and alternative compilers xngbuilds · 149 pts · May 25, 2026 · 47% similar
- Orthodox C++ (2016) signa11 · 93 pts · June 13, 2026 · 46% similar
- Emacs internals: Tagged pointers vs. C++ std:variant and LLVM (Part 3) thecloudlet · 66 pts · March 12, 2026 · 45% similar
- Show HN: Clx – Compile Lua to Native Executables Through C++20 _samt_ · 31 pts · July 11, 2026 · 45% similar
Discussion Highlights (7 comments)
jdw64
But looking at this, it seems like something similar happened 12 years ago[1]. Why hasn't it been changed? [1] https://cplusplus.github.io/CWG/issues/1555.html
ndesaulniers
Shrug, then write a defect report?
leecommamichael
If you're starting a new project and can afford it, please for the love of the children, use a different systems language. In so many ways Odin, Rust, Zig, whatever are better. There will be growing pains with respect to collective knowledge and performance, but they are surmountable. Context: I am a programmer and educator. I am so tired of informing people of these minutiae.
kloop
Give how default gcc and clang are, along with the recommendation to update the standard instead of gcc and clang, it sounds like the standard is noncompliant with standard C++ Standard in the sense of commonly used or supplied
ch_123
Hot take: I feel like a lot of the original value of language standards was to unite multiple proprietary implementations of compilers/runtimes/etc. from different vendors, each of which had incentives to add non standard features to attract customers and keep them locked in. This has been significantly diminished in the last decade or two now that most languages have high quality open source implementations - now you can simply port your compiler of choice to the platform you need.
Fudgel
https://archive.md/lBvFq
dataflow
> gcc and clang can't change their behavior because that would be a breaking ABI change It's an API change. Breaking source code is generally an even bigger deal than breaking binary compatibility.