https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124621
--- Comment #11 from Torbjorn SVENSSON <azoff at gcc dot gnu.org> ---
Same thing happens for g++.dg/reflect/reflect_constant_array11.C:
Testing reflect/reflect_constant_array11.C, -std=c++26
doing compile
Executing on host: /build/r17-409-g8376a674e3564f/bin/arm-none-eabi-g++
/build/gcc_src/gcc/testsuite/g++.dg/reflect/reflect_constant_array11.C -mthumb
-march=armv6s-m -mtune=cortex-m0 -mfloat-abi=soft -mfpu=auto
-fdiagnostics-plain-output -fmessage-length=0 -std=c++26 -pedantic-errors
-Wno-long-long -freflection -S -o reflect_constant_array11.s (timeout =
800)
spawn -ignore SIGHUP /build/r17-409-g8376a674e3564f/bin/arm-none-eabi-g++
/build/gcc_src/gcc/testsuite/g++.dg/reflect/reflect_constant_array11.C -mthumb
-march=armv6s-m -mtune=cortex-m0 -mfloat-abi=soft -mfpu=auto
-fdiagnostics-plain-output -fmessage-length=0 -std=c++26 -pedantic-errors
-Wno-long-long -freflection -S -o reflect_constant_array11.s
pid is 45946 -45946
/build/gcc_src/gcc/testsuite/g++.dg/reflect/reflect_constant_array11.C:13:43:
error: 'reflect_constant_array' argument with 'std::ranges::range_value_t<const
A [2]>' {aka 'std::iter_value_t<const A*>'} which is not a structural type
/build/gcc_src/gcc/testsuite/g++.dg/reflect/reflect_constant_array11.C:11:34:
note: 'A::c' is mutable
/build/gcc_src/gcc/testsuite/g++.dg/reflect/reflect_constant_array11.C:17:43:
error: 'reflect_constant_array' argument with 'std::ranges::range_value_t<const
B [2][2]>' {aka 'B [2]'} which is not copy constructible
pid is -1
close result is 45946 exp5 0 1
output is
/build/gcc_src/gcc/testsuite/g++.dg/reflect/reflect_constant_array11.C:13:43:
error: 'reflect_constant_array' argument with 'std::ranges::range_value_t<const
A [2]>' {aka 'std::iter_value_t<const A*>'} which is not a structural type
/build/gcc_src/gcc/testsuite/g++.dg/reflect/reflect_constant_array11.C:11:34:
note: 'A::c' is mutable
/build/gcc_src/gcc/testsuite/g++.dg/reflect/reflect_constant_array11.C:17:43:
error: 'reflect_constant_array' argument with 'std::ranges::range_value_t<const
B [2][2]>' {aka 'B [2]'} which is not copy constructible
status 1
compiler exited with status 1
FAIL: g++.dg/reflect/reflect_constant_array11.C -std=c++26 at line 14 (test
for errors, line 13)
PASS: g++.dg/reflect/reflect_constant_array11.C -std=c++26 at line 18 (test
for errors, line 17)
FAIL: g++.dg/reflect/reflect_constant_array11.C -std=c++26 (test for excess
errors)
Excess errors:
/build/gcc_src/gcc/testsuite/g++.dg/reflect/reflect_constant_array11.C:13:43:
error: 'reflect_constant_array' argument with 'std::ranges::range_value_t<const
A [2]>' {aka 'std::iter_value_t<const A*>'} which is not a structural type