blob: 7271f1aa71ee5344fd8b42591a8bd16600954d91 [file] [log] [blame]
// g++ 1.36.1 bug 900107_01
// Unlike GCC and Cfront 2.0, the g++ 1.36.1 compiler gives struct, union,
// and class declarations which are nested within blocks file scope.
// Cfront 2.0 passes this test.
// keywords: block scope, file scope, nested types, tagged types
class c1 { int c1_member1; };
struct s1 { int s1_member1; };
union u1 { int u1_member1; };
enum e1 { e1_val1 };
typedef int t1;
void foo ()
{
class c1 { // gets bogus error
int c1_member1;
} c1_local_object_0;
struct s1 { // gets bogus error
int s1_member1;
} s1_local_object_0;
union u1 { // gets bogus error
int u1_member1;
} u1_local_object_0;
enum e1 { // OK using g++ or GCC, but mishandled by Cfront 2.0.
e1_value1
} e1_local_object_0;
typedef int t1; // OK
}
int main () { return 0; }