Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/ext/flexary26.C @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
line wrap: on
line source
// PR c++/81922 // { dg-do compile } // { dg-options "-Wpedantic" } struct S { const char *a; char b[]; }; // { dg-warning "32:ISO C\\+\\+ forbids flexible array member" } struct T { int a; int b[]; }; // { dg-warning "23:ISO C\\+\\+ forbids flexible array member" } #if __cplusplus >= 201103L S c[] { "", "" }; // { dg-error "initialization of flexible array member in a nested context" "" { target c++11 } } // { dg-warning "initialization of a flexible array member" "" { target c++11 } .-1 } S d[] { "", { 0 } }; // { dg-error "initialization of flexible array member in a nested context" "" { target c++11 } } // { dg-warning "initialization of a flexible array member" "" { target c++11 } .-1 } T e[] { 1, { 2 }, 3, { 4 } }; // { dg-error "initialization of flexible array member in a nested context" "" { target c++11 } } // { dg-warning "initialization of a flexible array member" "" { target c++11 } .-1 } T f[] { 1, {}, 3, {} }; // { dg-warning "initialization of a flexible array member" "" { target c++11 } } T g { 1, { 1, 2, 3 } }; // { dg-warning "initialization of a flexible array member" "" { target c++11 } } S h { "abcd", "" }; // { dg-warning "initialization of a flexible array member" "" { target c++11 } } #endif S i[] = { "", "", "", "" }; // { dg-error "initialization of flexible array member in a nested context" } // { dg-warning "initialization of a flexible array member" "" { target *-*-* } .-1 } S j[] = { "", { 1 }, "", { 2, 3 } }; // { dg-error "initialization of flexible array member in a nested context" } // { dg-warning "initialization of a flexible array member" "" { target *-*-* } .-1 } T k[] = { 1, { 2 }, 3, { 4 } }; // { dg-error "initialization of flexible array member in a nested context" } // { dg-warning "initialization of a flexible array member" "" { target *-*-* } .-1 } T l[] = { 1, {}, 3, {} }; // { dg-warning "initialization of a flexible array member" } T m = { 1, { 1, 2, 3 } }; // { dg-warning "initialization of a flexible array member" } S n = { "", "abcde" }; // { dg-warning "initialization of a flexible array member" }