https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124120
--- Comment #3 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot
Uni-Bielefeld.DE> ---
> --- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
> Could you please upload preprocessed source?
Sure, done.
> Does it ICE if you comment out the error in the test, i.e.
> consteval void bar() {
> - template for (constexpr int I : foo()) {
> +// template for (constexpr int I : foo()) {
> // doesn't work
> - } // { dg-error "'foo\\\(\\\)' is not a constant expression
> because it refers to a result of 'operator new'" }
> +// } // { dg-error "'foo\\\(\\\)' is not a constant
> expression because it refers to a result of 'operator new'" }
> }
> ? If not, then it would be ice-on-invalid or error-recovery. Still, that
> line
> in the mangler isn't called at all when testing this on Linux.
It ICEs just the same.