Kaynağa Gözat

* Prevent range check error.

git-svn-id: trunk@7666 -
daniel 18 yıl önce
ebeveyn
işleme
b034a88c9c
1 değiştirilmiş dosya ile 4 ekleme ve 1 silme
  1. 4 1
      compiler/constexp.pas

+ 4 - 1
compiler/constexp.pas

@@ -355,7 +355,10 @@ begin
       if sa xor sb then
         begin
           result.signed:=true;
-          result.svalue:=-r;
+          if r>qword(high(int64)) then
+            result.overflow:=true
+          else
+            result.svalue:=-int64(r);
         end
       else
         begin