[svn] r6834: nemerle/trunk: macros/Util.n ncc/hierarchy/TypeBuilder.n ncc/parsing/ParseTree.n

VladD2 svnadmin at nemerle.org
Sun Nov 5 14:08:49 CET 2006


Log:
Add forced initializing of ClassMember.Env field.

Author: VladD2
Date: Sun Nov  5 14:08:46 2006
New Revision: 6834

Modified:
   nemerle/trunk/macros/Util.n
   nemerle/trunk/ncc/hierarchy/TypeBuilder.n
   nemerle/trunk/ncc/parsing/ParseTree.n

Modified: nemerle/trunk/macros/Util.n
==============================================================================
--- nemerle/trunk/macros/Util.n	(original)
+++ nemerle/trunk/macros/Util.n	Sun Nov  5 14:08:46 2006
@@ -138,6 +138,8 @@
           }
         ]>;
 
+    prop.Env = storage_field.Env;
+
     when (want_internal) {
       prop.Attributes &= ~NemerleAttributes.Public;
       prop.Attributes |= NemerleAttributes.Internal;

Modified: nemerle/trunk/ncc/hierarchy/TypeBuilder.n
==============================================================================
--- nemerle/trunk/ncc/hierarchy/TypeBuilder.n	(original)
+++ nemerle/trunk/ncc/hierarchy/TypeBuilder.n	Sun Nov  5 14:08:46 2006
@@ -1627,6 +1627,9 @@
   
   internal bind_and_add_member (class_member : PT.ClassMember) : MemberBuilder
   {
+    when (class_member.Env == null)
+      class_member.Env = GlobalEnv;
+
     Util.locate (class_member.loc, {
       // if current class is static (it's a module) then sign its members to static
       when (IsModule)

Modified: nemerle/trunk/ncc/parsing/ParseTree.n
==============================================================================
--- nemerle/trunk/ncc/parsing/ParseTree.n	(original)
+++ nemerle/trunk/ncc/parsing/ParseTree.n	Sun Nov  5 14:08:46 2006
@@ -97,7 +97,7 @@
       }
     | EnumOption { value : option [PExpr]; }
 
-    internal mutable Env : GlobalEnv;
+    public mutable Env : GlobalEnv;
     internal mutable Tokens : Token.BracesGroup;
     
     /** accessible only for ClassMember.Function, when its FunBody is not typed or compiled */



More information about the svn mailing list