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

--- Comment #6 from Thomas Schwinge <tschwinge at gcc dot gnu.org> ---
Created attachment 56479
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=56479&action=edit
'initlist13.ii.xz'

(In reply to Patrick Palka from comment #5)
> I can't reproduce any of these testsuite failures on trunk with x86_64
> -m32... could you provide a preprocessed source file perhaps?

Sure; I'm attaching 'testsuite/g++.dg/cpp0x/initlist13.C' (picked at random;
not yet reduced):

    $ build-gcc/gcc/cc1plus -fpreprocessed initlist13.ii -quiet -m32
-mtune=generic -march=x86-64 -pedantic-errors -Wno-long-long -std=c++20 -o
initlist13.s
    In file included from
[...]/source-gcc/gcc/testsuite/g++.dg/cpp0x/initlist13.C:4:
    [...]/build-gcc/x86_64-pc-linux-gnu/32/libstdc++-v3/include/complex: In
member function ‘constexpr std::complex<float>&
std::complex<float>::operator/=(const std::complex<_Tp>&)’:
   
[...]/build-gcc/x86_64-pc-linux-gnu/32/libstdc++-v3/include/complex:1493:16:
internal compiler error: in tsubst_expr, at cp/pt.cc:21534
    [...]


For avoidance of doubt:

(In reply to Andreas Schwab from comment #2)
> Similar failures on m68k.
> 
> g++[...]

..., indeed I'm seeing similar C++ front end testing regressions -- I just had
not yet looked into those test results when I filed this issue.

    PASS: g++.dg/cpp0x/initlist13.C  -std=c++14 (test for excess errors)
    PASS: g++.dg/cpp0x/initlist13.C  -std=c++17 (test for excess errors)
    [-PASS:-]{+FAIL: g++.dg/cpp0x/initlist13.C  -std=c++20 (internal compiler
error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/cpp0x/initlist13.C  -std=c++20 (test for excess errors)
    UNSUPPORTED: g++.dg/cpp0x/initlist13.C  -std=c++98

    @@ -330299,8 +332283,9 @@ PASS: g++.dg/cpp0x/udlit-general.C  -std=c++14
(test for excess errors)
    PASS: g++.dg/cpp0x/udlit-general.C  -std=c++14 execution test
    PASS: g++.dg/cpp0x/udlit-general.C  -std=c++17 (test for excess errors)
    PASS: g++.dg/cpp0x/udlit-general.C  -std=c++17 execution test
    [-PASS:-]{+FAIL: g++.dg/cpp0x/udlit-general.C  -std=c++20 (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/cpp0x/udlit-general.C  -std=c++20 (test for excess errors)
    [-PASS:-]{+UNRESOLVED:+} g++.dg/cpp0x/udlit-general.C  -std=c++20
[-execution test-]{+compilation failed to produce executable+}
    UNSUPPORTED: g++.dg/cpp0x/udlit-general.C  -std=c++98

    PASS: g++.dg/cpp1y/complex_literals1.C  -std=c++14 (test for excess errors)
    PASS: g++.dg/cpp1y/complex_literals1.C  -std=c++17 (test for excess errors)
    [-PASS:-]{+FAIL: g++.dg/cpp1y/complex_literals1.C  -std=c++20 (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/cpp1y/complex_literals1.C  -std=c++20 (test for excess
errors)
    UNSUPPORTED: g++.dg/cpp1y/complex_literals1.C  -std=c++98

    PASS: g++.dg/cpp1y/udlit-userdef-string.C  -std=c++14 (test for excess
errors)
    PASS: g++.dg/cpp1y/udlit-userdef-string.C  -std=c++17 (test for excess
errors)
    [-PASS:-]{+FAIL: g++.dg/cpp1y/udlit-userdef-string.C  -std=c++20 (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/cpp1y/udlit-userdef-string.C  -std=c++20 (test for excess
errors)
    UNSUPPORTED: g++.dg/cpp1y/udlit-userdef-string.C  -std=c++98

    @@ -379174,8 +381318,9 @@ PASS: g++.dg/opt/nrv17.C  -std=c++14 (test for
excess errors)
    PASS: g++.dg/opt/nrv17.C  -std=c++14 execution test
    PASS: g++.dg/opt/nrv17.C  -std=c++17 (test for excess errors)
    PASS: g++.dg/opt/nrv17.C  -std=c++17 execution test
    [-PASS:-]{+FAIL: g++.dg/opt/nrv17.C  -std=c++20 (internal compiler error:
in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/opt/nrv17.C  -std=c++20 (test for excess errors)
    [-PASS:-]{+UNRESOLVED:+} g++.dg/opt/nrv17.C  -std=c++20 [-execution
test-]{+compilation failed to produce executable+}
    PASS: g++.dg/opt/nrv17.C  -std=c++98 (test for excess errors)
    PASS: g++.dg/opt/nrv17.C  -std=c++98 execution test

    PASS: g++.dg/modules/xtreme-header-5_a.H -std=c++17 (test for excess
errors)
    [-PASS:-]{+FAIL: g++.dg/modules/xtreme-header-5_a.H -std=c++2a (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/modules/xtreme-header-5_a.H -std=c++2a (test for excess
errors)
    [-PASS:-]{+FAIL: g++.dg/modules/xtreme-header-5_a.H -std=c++2b (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/modules/xtreme-header-5_a.H -std=c++2b (test for excess
errors)[-PASS: g++.dg/modules/xtreme-header-5_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-header-5_a.H.gcm)-]
    [-PASS: g++.dg/modules/xtreme-header-5_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-header-5_a.H.gcm)-]
    PASS: g++.dg/modules/xtreme-header-5_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-header-5_a.H.gcm)
    {+FAIL: g++.dg/modules/xtreme-header-5_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-header-5_a.H.gcm)+}
    {+FAIL: g++.dg/modules/xtreme-header-5_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-header-5_a.H.gcm)+}
    PASS: g++.dg/modules/xtreme-header-5_b.C -std=c++17 (test for excess
errors)
    [-PASS:-]{+FAIL:+} g++.dg/modules/xtreme-header-5_b.C -std=c++2a (test for
excess errors)
    [-PASS:-]{+FAIL:+} g++.dg/modules/xtreme-header-5_b.C -std=c++2b (test for
excess errors)
    PASS: g++.dg/modules/xtreme-header-5_c.C -std=c++17 (test for excess
errors)
    [-PASS:-]{+FAIL:+} g++.dg/modules/xtreme-header-5_c.C -std=c++2a (test for
excess errors)
    [-PASS:-]{+FAIL:+} g++.dg/modules/xtreme-header-5_c.C -std=c++2b (test for
excess errors)

    PASS: g++.dg/modules/xtreme-header_a.H -std=c++17 (test for excess errors)
    [-PASS:-]{+FAIL: g++.dg/modules/xtreme-header_a.H -std=c++2a (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/modules/xtreme-header_a.H -std=c++2a (test for excess
errors)
    [-PASS:-]{+FAIL: g++.dg/modules/xtreme-header_a.H -std=c++2b (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/modules/xtreme-header_a.H -std=c++2b (test for excess
errors)[-PASS: g++.dg/modules/xtreme-header_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-header_a.H.gcm)-]
    [-PASS: g++.dg/modules/xtreme-header_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-header_a.H.gcm)-]
    PASS: g++.dg/modules/xtreme-header_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-header_a.H.gcm)
    {+FAIL: g++.dg/modules/xtreme-header_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-header_a.H.gcm)+}
    {+FAIL: g++.dg/modules/xtreme-header_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-header_a.H.gcm)+}
    PASS: g++.dg/modules/xtreme-header_b.C -std=c++17 (test for excess errors)
    [-PASS:-]{+FAIL:+} g++.dg/modules/xtreme-header_b.C -std=c++2a (test for
excess errors)
    [-PASS:-]{+FAIL:+} g++.dg/modules/xtreme-header_b.C -std=c++2b (test for
excess errors)
    PASS: g++.dg/modules/xtreme-tr1_a.H -std=c++17 (test for excess errors)
    [-PASS:-]{+FAIL: g++.dg/modules/xtreme-tr1_a.H -std=c++2a (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/modules/xtreme-tr1_a.H -std=c++2a (test for excess errors)
    [-PASS:-]{+FAIL: g++.dg/modules/xtreme-tr1_a.H -std=c++2b (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.dg/modules/xtreme-tr1_a.H -std=c++2b (test for excess
errors)[-PASS: g++.dg/modules/xtreme-tr1_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-tr1_a.H.gcm)-]
    [-PASS: g++.dg/modules/xtreme-tr1_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-tr1_a.H.gcm)-]
    PASS: g++.dg/modules/xtreme-tr1_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-tr1_a.H.gcm)
    {+FAIL: g++.dg/modules/xtreme-tr1_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-tr1_a.H.gcm)+}
    {+FAIL: g++.dg/modules/xtreme-tr1_a.H module-cmi 
(gcm.cache/$srcdir/g++.dg/modules/xtreme-tr1_a.H.gcm)+}
    PASS: g++.dg/modules/xtreme-tr1_b.C -std=c++17 (test for excess errors)
    [-PASS:-]{+FAIL:+} g++.dg/modules/xtreme-tr1_b.C -std=c++2a (test for
excess errors)
    [-PASS:-]{+FAIL:+} g++.dg/modules/xtreme-tr1_b.C -std=c++2b (test for
excess errors)

    PASS: g++.old-deja/g++.brendan/crash20.C  -std=c++14 (test for excess
errors)
    PASS: g++.old-deja/g++.brendan/crash20.C  -std=c++17 (test for excess
errors)
    [-PASS:-]{+FAIL: g++.old-deja/g++.brendan/crash20.C  -std=c++20 (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.old-deja/g++.brendan/crash20.C  -std=c++20 (test for excess
errors)
    PASS: g++.old-deja/g++.brendan/crash20.C  -std=c++98 (test for excess
errors)

    PASS: g++.old-deja/g++.law/ctors6.C  -std=c++14 (test for excess errors)
    PASS: g++.old-deja/g++.law/ctors6.C  -std=c++17 (test for excess errors)
    [-PASS:-]{+FAIL: g++.old-deja/g++.law/ctors6.C  -std=c++20 (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.old-deja/g++.law/ctors6.C  -std=c++20 (test for excess
errors)
    PASS: g++.old-deja/g++.law/ctors6.C  -std=c++98 (test for excess errors)

    @@ -499462,8 +502648,9 @@ PASS: g++.old-deja/g++.law/operators4.C 
-std=c++14  (test for errors, line 18)
    PASS: g++.old-deja/g++.law/operators4.C  -std=c++14 (test for excess
errors)
    PASS: g++.old-deja/g++.law/operators4.C  -std=c++17  (test for errors, line
18)
    PASS: g++.old-deja/g++.law/operators4.C  -std=c++17 (test for excess
errors)
    [-PASS:-]{+FAIL:+} g++.old-deja/g++.law/operators4.C  -std=c++20  (test for
errors, line 18)
    [-PASS:-]{+FAIL: g++.old-deja/g++.law/operators4.C  -std=c++20 (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.old-deja/g++.law/operators4.C  -std=c++20 (test for excess
errors)
    PASS: g++.old-deja/g++.law/operators4.C  -std=c++98  (test for errors, line
18)
    PASS: g++.old-deja/g++.law/operators4.C  -std=c++98 (test for excess
errors)

    @@ -507132,8 +510319,9 @@ PASS: g++.old-deja/g++.other/headers1.C 
-std=c++14 (test for excess errors)
    PASS: g++.old-deja/g++.other/headers1.C  -std=c++14 execution test
    PASS: g++.old-deja/g++.other/headers1.C  -std=c++17 (test for excess
errors)
    PASS: g++.old-deja/g++.other/headers1.C  -std=c++17 execution test
    [-PASS:-]{+FAIL: g++.old-deja/g++.other/headers1.C  -std=c++20 (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.old-deja/g++.other/headers1.C  -std=c++20 (test for excess
errors)
    [-PASS:-]{+UNRESOLVED:+} g++.old-deja/g++.other/headers1.C  -std=c++20
[-execution test-]{+compilation failed to produce executable+}
    PASS: g++.old-deja/g++.other/headers1.C  -std=c++98 (test for excess
errors)
    PASS: g++.old-deja/g++.other/headers1.C  -std=c++98 execution test

    PASS: g++.old-deja/g++.robertl/eb3.C  -std=c++14 (test for excess errors)
    PASS: g++.old-deja/g++.robertl/eb3.C  -std=c++17 (test for excess errors)
    [-PASS:-]{+FAIL: g++.old-deja/g++.robertl/eb3.C  -std=c++20 (internal
compiler error: in tsubst_expr, at cp/pt.cc:21534)+}
    {+FAIL:+} g++.old-deja/g++.robertl/eb3.C  -std=c++20 (test for excess
errors)
    PASS: g++.old-deja/g++.robertl/eb3.C  -std=c++98 (test for excess errors)

Reply via email to