[svn] r6865: nemerle/trunk/ncc/parsing/PreParser.n

VladD2 svnadmin at nemerle.org
Sat Nov 11 16:22:59 CET 2006


Log:
Fix location of group.

Author: VladD2
Date: Sat Nov 11 16:22:58 2006
New Revision: 6865

Modified:
   nemerle/trunk/ncc/parsing/PreParser.n

Modified: nemerle/trunk/ncc/parsing/PreParser.n
==============================================================================
--- nemerle/trunk/ncc/parsing/PreParser.n	(original)
+++ nemerle/trunk/ncc/parsing/PreParser.n	Sat Nov 11 16:22:58 2006
@@ -306,7 +306,10 @@
           // finish entire brace group
           | Token.EndSquare =>
             def group = finish_parent (parent_begin, current_begin);
-            Token.SquareGroup (loc + tok.Location, group);
+            def groupLoc = loc + tok.Location;
+            when (group != null)
+              group.Location = groupLoc;
+            Token.SquareGroup (groupLoc, group);
 
           // finish current loose group
           | Token.Comma => finish_current (current_begin, tok); loop ()
@@ -319,7 +322,10 @@
         Message.Error (loc, "when parsing this `[' brace group");
         Message.Error (e.Location, e.Message);
         def group = finish_parent (parent_begin, current_begin);
-        Token.SquareGroup (shift_end(loc + e.Location), group);
+        def groupLoc = loc + e.Location;
+        when (group != null)
+          group.Location = groupLoc;
+        Token.SquareGroup (shift_end(groupLoc), group);
       }
     }
 



More information about the svn mailing list