blob: cc6712f0ae59b03ac81475b19adc2a7d92f81fa3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
// { dg-do assemble }
// Message-Id: <m0lLuUK-0000fRC@nix.appli.se>
// Date: Wed, 4 Mar 92 12:50 MET
// From: niklas@appli.se (Niklas Hallqvist)
// To: eichin@cygnus.com, tiemann@cygnus.com
// Cc: gcc2@cygnus.com
// Subject: nested type handling
//
// The last couple of days I've been struggling with nested types in the
// C++ compiler. Frankly, it's a mess! Was it impossible to put the stuff
// into the parser instead of the lexer? Well, anyway, to get the following
// code to compile:
//
// struct O {
// struct M {
// struct I
// {};
// };
// };
// O::M::I s;
//
// a patch enclosed below is needed. I'm not sure if it causes any
// unanticipated side-effects, but it seem to work well for me.
struct O {
struct M {
struct I
{};
};
};
O::M::I s;
|