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

            Bug ID: 100412
           Summary: [11/12 regression] PASS & FAIL for same test
                    aarch64-qemu: gcc.dg/Wvla-parameter-[23].c pr?????
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: rearnsha at gcc dot gnu.org
  Target Milestone: ---

contrig/test_summary on Arm and AArch64 shows both PASS and FAIL with the same
summary line.  

Tests that now fail, but worked before (6 tests):

aarch64-qemu: gcc.dg/Wvla-parameter-2.c pr????? (test for warnings, line 40)
aarch64-qemu: gcc.dg/Wvla-parameter-2.c pr????? (test for warnings, line 42)
aarch64-qemu: gcc.dg/Wvla-parameter-2.c pr????? (test for warnings, line 44)
aarch64-qemu: gcc.dg/Wvla-parameter-2.c pr????? (test for warnings, line 46)
aarch64-qemu: gcc.dg/Wvla-parameter-3.c pr????? (test for warnings, line 35)
aarch64-qemu: gcc.dg/Wvla-parameter-3.c pr????? (test for warnings, line 39)

Tests that now work, but didn't before (6 tests):

aarch64-qemu: gcc.dg/Wvla-parameter-2.c pr????? (test for warnings, line 40)
aarch64-qemu: gcc.dg/Wvla-parameter-2.c pr????? (test for warnings, line 42)
aarch64-qemu: gcc.dg/Wvla-parameter-2.c pr????? (test for warnings, line 44)
aarch64-qemu: gcc.dg/Wvla-parameter-2.c pr????? (test for warnings, line 46)
aarch64-qemu: gcc.dg/Wvla-parameter-3.c pr????? (test for warnings, line 35)
aarch64-qemu: gcc.dg/Wvla-parameter-3.c pr????? (test for warnings, line 39)

It looks like these tests really do have two tests that try to refer to the
same line (one of which is an XFAIL), but this breaks the summary reporter.

Is there a way of reworking this test to remove these bogus reports, perhaps by
duplicating the declarations on separate lines so instead of:

void f (int[n1][2][n3][4][n5][6][*][8][n9]);   // { dg-warning "argument 1 of
type 'int\\\[n1]\\\[2]\\\[n3]\\\[4]\\\[n5]\\\[6]\\\[\\\*]\\\[8]\\\[n9]'
declared with 1 unspecified variable bound" "pr?????" { xfail *-*-* } }
// { dg-warning "argument 1 of type
'int\\\[n1]\\\[2]\\\[n3]\\\[4]\\\[n5]\\\[6]\\\[0]\\\[8]\\\[n9]' declared with 1
unspecified variable bound" "pr?????" { target *-*-* } .-1 }


We have:

void f (int[n1][2][n3][4][n5][6][*][8][n9]);   // { dg-warning "argument 1 of
type 'int\\\[n1]\\\[2]\\\[n3]\\\[4]\\\[n5]\\\[6]\\\[\\\*]\\\[8]\\\[n9]'
declared with 1 unspecified variable bound" "pr?????" { xfail *-*-* } }
void g (int[n1][2][n3][4][n5][6][*][8][n9]);  // { dg-warning "argument 1 of
type 'int\\\[n1]\\\[2]\\\[n3]\\\[4]\\\[n5]\\\[6]\\\[0]\\\[8]\\\[n9]' declared
with 1 unspecified variable bound" "pr?????" { target *-*-* } }

Reply via email to