In mcs and gmcs:
authorRaja R Harinath <harinath@hurrynot.org>
Wed, 2 Aug 2006 10:09:19 +0000 (10:09 -0000)
committerRaja R Harinath <harinath@hurrynot.org>
Wed, 2 Aug 2006 10:09:19 +0000 (10:09 -0000)
commit6781e7f4b015efac624cb501041bbab3e40e0830
tree1debc810d33988af474a1ca207d285870c18eff1
parent12ee5059bc42566cb97e26c978d1b20107bca806
In mcs and gmcs:
Implement parts of #77403
* roottypes.cs (RootDeclSpace): New.  Used to represent the
toplevel declaration space.  Each namespace declaration introduces
a "partial" root declaretion space.
* namespace.cs (NamespaceEntry.SlaveDeclSpace): New.
(NamespaceEntry.ctor): Create a SlaveDeclSpace if necessary.
* cs-parser.jay (CSharpParser.ctor): Initialize 'current_class'
from 'current_namespace.SlaveDeclSpace'.
(namespace_declaration): Likewise.
* class.cs (TypeContainer.ctor): Remove parent==ToplevelTypes
check.  It can't happen now.
* decl.cs (DeclSpace.LookupType): Likewise.
* driver.cs (MainDriver): Sanity check.

svn path=/trunk/mcs/; revision=63243
14 files changed:
mcs/gmcs/ChangeLog
mcs/gmcs/class.cs
mcs/gmcs/cs-parser.jay
mcs/gmcs/decl.cs
mcs/gmcs/driver.cs
mcs/gmcs/namespace.cs
mcs/gmcs/roottypes.cs
mcs/mcs/ChangeLog
mcs/mcs/class.cs
mcs/mcs/cs-parser.jay
mcs/mcs/decl.cs
mcs/mcs/driver.cs
mcs/mcs/namespace.cs
mcs/mcs/roottypes.cs