1 // { dg-options "-pedantic-errors -std=c++98" }
3 // g++ 1.36.1 bug 900119_01
5 // g++ allows initializers to be included in the declaration of members
6 // of classes, structs, unions (even when -pedantic is used).
8 // This is not allowed by the C++ 2.0 Reference Manual or by Cfront 2.0.
10 // keywords: member declaration, member initialization
12 // { dg-prune-output "is a static data member" }
18 int class0_member_0 = 99; /* { dg-error "" } */
19 static int class0_member_1 = 99; /* { dg-error "" } */
20 int &class0_member_2 = global_int; /* { dg-error "" } */
22 class0 () : class0_member_2 (global_int) { }
27 int struct0_member_0 = 99; /* { dg-error "" } */
28 static int struct0_member_1 = 99; /* { dg-error "" } */
29 int &struct0_member_2 = global_int; /* { dg-error "" } */
31 struct0 () : struct0_member_2 (global_int) { }
34 // g++ does not allow unions to have more than one member with an initializer
37 int union0_member_0 = 99; /* { dg-error "" } */
41 //static int union1_member_0 = 99; /* definitely illegal (9.5) */
45 int &union2_member_0 = global_int; /* { dg-error "" } */
47 union2 () : union2_member_0 (global_int) { }
50 int main () { return 0; }