[svn] r6838: nemerle/trunk: macros/Internals.n ncc/hierarchy/ClassMembers.n

VladD2 svnadmin at nemerle.org
Mon Nov 6 17:18:54 CET 2006


Log:
Fix location in auto generated crors.

Author: VladD2
Date: Mon Nov  6 17:18:51 2006
New Revision: 6838

Modified:
   nemerle/trunk/macros/Internals.n
   nemerle/trunk/ncc/hierarchy/ClassMembers.n

Modified: nemerle/trunk/macros/Internals.n
==============================================================================
--- nemerle/trunk/macros/Internals.n	(original)
+++ nemerle/trunk/macros/Internals.n	Mon Nov  6 17:18:51 2006
@@ -152,10 +152,15 @@
       else
       match (mems) {
         | [] => 
+          def loc = t.Location;
+          def loc1 = Location(loc.FileIndex, loc.Line, loc.Column);
+          Util.locate(loc1, 
           if (is_static) 
             t.Define (<[ decl: static public this () { Nemerle.InternalMacros.initializer ($init); } ]>)
           else
             t.Define (<[ decl: public this () { Nemerle.InternalMacros.initializer ($init); } ]>)
+            );
+
 
         // inject intializers into all ctors
         | _ => mems.Iter (inject)

Modified: nemerle/trunk/ncc/hierarchy/ClassMembers.n
==============================================================================
--- nemerle/trunk/ncc/hierarchy/ClassMembers.n	(original)
+++ nemerle/trunk/ncc/hierarchy/ClassMembers.n	Mon Nov  6 17:18:51 2006
@@ -913,6 +913,8 @@
         body_location = 
           if (Location.IsFileInIndentationSyntax(loc.FileIndex))
             loc
+          else if (loc.Line == loc.EndLine && loc.EndColumn - loc.Column < 2)
+            Location(loc.FileIndex, loc.Line, loc.Column, loc.EndLine, loc.Column);
           else
             Location(loc.FileIndex, loc.Line, loc.Column + 1, loc.EndLine, loc.EndColumn - 1);
 



More information about the svn mailing list