[svn] r7598: nemerle/trunk/ncc/generation/ILEmitter.n

IT svnadmin at nemerle.org
Sun Apr 15 22:26:27 CEST 2007


Log:
Temp solution for debugging.

Author: IT
Date: Sun Apr 15 22:26:26 2007
New Revision: 7598

Modified:
   nemerle/trunk/ncc/generation/ILEmitter.n

Modified: nemerle/trunk/ncc/generation/ILEmitter.n
==============================================================================
--- nemerle/trunk/ncc/generation/ILEmitter.n	(original)
+++ nemerle/trunk/ncc/generation/ILEmitter.n	Sun Apr 15 22:26:26 2007
@@ -197,7 +197,7 @@
     /** Marks the point in source file for currently emmited opcode */
     Mark (loc : Location) : void
     {
-      //when (loc.Line == loc.Line)
+      when (loc.Line == loc.EndLine)
       when (IsDebugEnabled && loc.Line != 0 && !debug_tmp_disabled && !prev_location.Contains(loc)) {
         prev_location = loc;
         Util.cassert (loc.Line <= loc.EndLine, "spoiled location " + loc.File + " " + loc.ToString ());
@@ -716,7 +716,15 @@
           def label_condition_else = _ilg.DefineLabel ();
           def label_condition_fi = _ilg.DefineLabel ();
 
-          MaybeMark (cond_expr.loc);
+          when (IsDebugEnabled)
+          {
+            match (cond_expr)
+            {
+            | HasType(LocalRef(decl), _) when decl.NameLocation.IsEmpty && decl.Name.StartsWith("_N_") => ()
+            | _ => MaybeMark (cond_expr.loc);
+            }
+          }
+
           limited_debug_nesting++;
           emit_branch (cond_expr, label_condition_else);
           limited_debug_nesting--;



More information about the svn mailing list