https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92193

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
This makes the diagnostics for std::vector diabolical.

We hit a nice static assertion saying something like:

/home/jwakely/gcc/12/include/c++/12.0.0/bits/stl_uninitialized.h:90:56: error:
static assertion failed: result type must be constructible from input type

And then the compiler just keeps on rollin'

...
/home/jwakely/gcc/12/include/c++/12.0.0/bits/stl_construct.h:115:28: error: no
matching function for call to 'construct_at(X*&, X&)'
...
/home/jwakely/gcc/12/include/c++/12.0.0/bits/stl_construct.h:96:17: error: use
of deleted function 'X::X(const X&)'
...
/home/jwakely/gcc/12/include/c++/12.0.0/bits/stl_construct.h:119:7: error: use
of deleted function 'X::X(const X&)'
...


The 23_containers/vector/cons/89164.cc test produces 28 lines of errors in
C++17 mode, and 159 lines of errors in C++20 mode, because everything is
constexpr.

Reply via email to