Explorar el Código

* fixed low() for signed types < 64bit

Jonas Maebe hace 24 años
padre
commit
d6116bc751
Se han modificado 1 ficheros con 6 adiciones y 2 borrados
  1. 6 2
      compiler/ninl.pas

+ 6 - 2
compiler/ninl.pas

@@ -138,7 +138,8 @@ implementation
                       { because it's bigger than high(tconstexprint) (JM) }
                       { because it's bigger than high(tconstexprint) (JM) }
                       v := 0
                       v := 0
                     else
                     else
-                      v := cardinal(v);
+                      if not is_signed(adef) then
+                        v := cardinal(v);
                   hp:=genordinalconstnode(v,adef);
                   hp:=genordinalconstnode(v,adef);
                   firstpass(hp);
                   firstpass(hp);
                   { fix high(qword) }
                   { fix high(qword) }
@@ -1535,7 +1536,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.28  2001-02-26 19:44:53  peter
+  Revision 1.29  2001-03-03 12:38:08  jonas
+    * fixed low() for signed types < 64bit
+
+  Revision 1.28  2001/02/26 19:44:53  peter
     * merged generic m68k updates from fixes branch
     * merged generic m68k updates from fixes branch
 
 
   Revision 1.27  2001/02/22 11:24:40  jonas
   Revision 1.27  2001/02/22 11:24:40  jonas