Procházet zdrojové kódy

temporary variables in inline calls (removed too strict check *)

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@7536 8c9fc860-2736-0410-a75d-ab315db34111
felixf před 7 roky
rodič
revize
67cf057258
1 změnil soubory, kde provedl 1 přidání a 1 odebrání
  1. 1 1
      source/FoxIntermediateBackend.Mod

+ 1 - 1
source/FoxIntermediateBackend.Mod

@@ -7038,7 +7038,7 @@ TYPE
 			ELSE (* v # NIL *) 
 			ELSE (* v # NIL *) 
 				(* reuse slot for new variable, do not create new slot ! *)
 				(* reuse slot for new variable, do not create new slot ! *)
 				temporaries.SetVariable(index, variable);
 				temporaries.SetVariable(index, variable);
-				ASSERT(v.scope = scope); 
+				(* ASSERT(v.scope = scope);  can be violated in inline calls *)
 				ASSERT(~register); 
 				ASSERT(~register); 
 				
 				
 				variable(SyntaxTree.Variable).SetOffset(v.offsetInBits);
 				variable(SyntaxTree.Variable).SetOffset(v.offsetInBits);