Browse Source

* fixed LOC_JUMP handling for case nodes

git-svn-id: trunk@3421 -
Jonas Maebe 19 years ago
parent
commit
5afd8c5e76
1 changed files with 5 additions and 2 deletions
  1. 5 2
      compiler/ncgset.pas

+ 5 - 2
compiler/ncgset.pas

@@ -717,7 +717,7 @@ implementation
 
          { save current current_procinfo.CurrTrueLabel and current_procinfo.CurrFalseLabel }
          isjump:=false;
-         if left.location.loc=LOC_JUMP then
+         if left.expectloc=LOC_JUMP then
           begin
             otl:=current_procinfo.CurrTrueLabel;
             current_asmdata.getjumplabel(current_procinfo.CurrTrueLabel);
@@ -743,7 +743,10 @@ implementation
           begin
             current_procinfo.CurrTrueLabel:=otl;
             current_procinfo.CurrFalseLabel:=ofl;
-          end;
+          end
+         else
+          if (left.location.loc=LOC_JUMP) then
+            internalerror(2006050501);
 
          { we need the min_label always to choose between }
          { cmps and subs/decs                             }