annotate gcc/testsuite/g++.dg/ext/flexary27.C @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 1830386684a0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
1 // PR c++/81922
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
2 // { dg-do compile }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
3
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
4 struct S { const char *a; char b[]; }; // { dg-error "32:ISO C\\+\\+ forbids flexible array member" }
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
5 struct T { int a; int b[]; }; // { dg-error "23:ISO C\\+\\+ forbids flexible array member" }
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
6 #if __cplusplus >= 201103L
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
7 S c[] { "", "" }; // { dg-error "initialization of flexible array member in a nested context" "" { target c++11 } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
8 // { dg-error "initialization of a flexible array member" "" { target c++11 } .-1 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
9 S d[] { "", { 0 } }; // { dg-error "initialization of flexible array member in a nested context" "" { target c++11 } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
10 // { dg-error "initialization of a flexible array member" "" { target c++11 } .-1 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
11 T e[] { 1, { 2 }, 3, { 4 } }; // { dg-error "initialization of flexible array member in a nested context" "" { target c++11 } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
12 // { dg-error "initialization of a flexible array member" "" { target c++11 } .-1 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
13 T f[] { 1, {}, 3, {} }; // { dg-error "initialization of a flexible array member" "" { target c++11 } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
14 T g { 1, { 1, 2, 3 } }; // { dg-error "initialization of a flexible array member" "" { target c++11 } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
15 S h { "abcd", "" }; // { dg-error "initialization of a flexible array member" "" { target c++11 } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
16 #endif
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
17 S i[] = { "", "", "", "" }; // { dg-error "initialization of flexible array member in a nested context" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
18 // { dg-error "initialization of a flexible array member" "" { target *-*-* } .-1 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
19 S j[] = { "", { 1 }, "", { 2, 3 } }; // { dg-error "initialization of flexible array member in a nested context" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
20 // { dg-error "initialization of a flexible array member" "" { target *-*-* } .-1 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
21 T k[] = { 1, { 2 }, 3, { 4 } }; // { dg-error "initialization of flexible array member in a nested context" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
22 // { dg-error "initialization of a flexible array member" "" { target *-*-* } .-1 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
23 T l[] = { 1, {}, 3, {} }; // { dg-error "initialization of a flexible array member" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
24 T m = { 1, { 1, 2, 3 } }; // { dg-error "initialization of a flexible array member" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
25 S n = { "", "abcde" }; // { dg-error "initialization of a flexible array member" }