[Bug libstdc++/120325] [Regression] GCC-15 cannot build LLVM 20.1.5 with CMAKE_CXX_STANDARD=20

2025-05-23 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120325

--- Comment #3 from Jonathan Wakely  ---
I've added a note about this to
https://gcc.gnu.org/gcc-15/porting_to.html#cxx20-iterators

[Bug libstdc++/120325] [Regression] GCC-15 cannot build LLVM 20.1.5 with CMAKE_CXX_STANDARD=20

2025-05-18 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120325

--- Comment #2 from Jonathan Wakely  ---
I'll comment on github too, but I think the problem is that you're using
-DCMAKE_CXX_STANDARD=20

It looks to me like LLVM's iterator facade is completely incompatible with
C++20. The operator overloads like operator- and operator+ should be
constrained using 

requires BaseT::IsRandomAccess and operator-- should be constrained with
requires BaseT::IsBirectional

If the facade provides those operators, then obviously the iterator is going to
look like it supports those operations when concepts like
std::random_access_iterator are checked.

So until LLVM is made C++20-compatible, don't try to build it as C++20.

[Bug libstdc++/120325] [Regression] GCC-15 cannot build LLVM 20.1.5 with CMAKE_CXX_STANDARD=20

2025-05-17 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120325

Andrew Pinski  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |MOVED

--- Comment #1 from Andrew Pinski  ---
So closing as moved.