2
0
Эх сурвалжийг харах

* removed warnings about possible range check errors

Jonas Maebe 25 жил өмнө
parent
commit
200e1d4b25

+ 6 - 3
compiler/i386/n386set.pas

@@ -950,7 +950,7 @@ implementation
          { we need the min_label always to choose between }
          { cmps and subs/decs                             }
          min_label:=case_get_min(nodes);
-         
+
          load_all_regvars(exprasmlist);
          { now generate the jumps }
          if opsize=S_Q then
@@ -1021,7 +1021,7 @@ implementation
                           genlinearlist(nodes)
                         else
                           begin
-                             if (dist>4*labels) then
+                             if (dist>4*cardinal(labels)) then
                                begin
                                   if labels>16 then
                                     gentreejmp(nodes)
@@ -1071,7 +1071,10 @@ begin
 end.
 {
   $Log$
-  Revision 1.7  2000-12-05 11:44:34  jonas
+  Revision 1.8  2000-12-16 15:58:18  jonas
+    * removed warnings about possible range check errors
+
+  Revision 1.7  2000/12/05 11:44:34  jonas
     + new integer regvar handling, should be much more efficient
 
   Revision 1.6  2000/11/29 00:30:49  florian

+ 6 - 3
compiler/i386/popt386.pas

@@ -361,7 +361,7 @@ Begin
                                 Paicpu(p)^.opcode := A_AND;
                                 l := (1 shl (Paicpu(p)^.oper[0].val))-1;
                                 Case Paicpu(p)^.opsize Of
-                                  S_L: Paicpu(p)^.LoadConst(0,l Xor $ffffffff);
+                                  S_L: Paicpu(p)^.LoadConst(0,l Xor longint($ffffffff));
                                   S_B: Paicpu(p)^.LoadConst(0,l Xor $ff);
                                   S_W: Paicpu(p)^.LoadConst(0,l Xor $ffff);
                                 End;
@@ -377,7 +377,7 @@ Begin
                                   Case Paicpu(p)^.opsize Of
                                     S_B: Paicpu(p)^.LoadConst(0,l Xor $ff);
                                     S_W: Paicpu(p)^.LoadConst(0,l Xor $ffff);
-                                    S_L: Paicpu(p)^.LoadConst(0,l Xor $ffffffff);
+                                    S_L: Paicpu(p)^.LoadConst(0,l Xor longint($ffffffff));
                                   End;
                                   AsmL^.remove(hp1);
                                   dispose(hp1, done);
@@ -2000,7 +2000,10 @@ End.
 
 {
   $Log$
-  Revision 1.4  2000-11-29 00:30:49  florian
+  Revision 1.5  2000-12-16 16:00:12  jonas
+    * removed warnings about possible range check errors
+
+  Revision 1.4  2000/11/29 00:30:49  florian
     * unused units removed from uses clause
     * some changes for widestrings
 

+ 6 - 3
rtl/i386/mmx.pp

@@ -92,7 +92,7 @@ unit mmx;
                  cpuid
                  movl %edx,_edx
               end;
-              amd_3d_support:=(_edx and $80000000)<>0;
+              amd_3d_support:=(_edx and longint($80000000))<>0;
            end
          else
            { a cpu with without cpuid instruction supports never mmx }
@@ -127,7 +127,10 @@ begin
 end.
 {
   $Log$
-  Revision 1.2  2000-07-13 11:33:41  michael
+  Revision 1.3  2000-12-16 15:58:18  jonas
+    * removed warnings about possible range check errors
+
+  Revision 1.2  2000/07/13 11:33:41  michael
   + removed logs
- 
+
 }

+ 6 - 3
rtl/objpas/objpas.pp

@@ -210,7 +210,7 @@ begin
      begin
      thehash:=thehash shl 4;
      inc(theHash,Ord(S[i]));
-     g:=thehash and ($f shl 28);
+     g:=thehash and longint($f shl 28);
      if g<>0 then
        begin
        thehash:=thehash xor (g shr 24);
@@ -349,7 +349,10 @@ end.
 
 {
   $Log$
-  Revision 1.4  2000-11-13 14:41:20  marco
+  Revision 1.5  2000-12-16 15:58:18  jonas
+    * removed warnings about possible range check errors
+
+  Revision 1.4  2000/11/13 14:41:20  marco
    * Unix renamefest for defines
 
   Revision 1.3  2000/07/14 10:33:10  michael
@@ -357,5 +360,5 @@ end.
 
   Revision 1.2  2000/07/13 11:33:51  michael
   + removed logs
- 
+
 }

+ 21 - 18
rtl/objpas/sysstr.inc

@@ -118,7 +118,7 @@ end ;
     P1 = P2    = 0    }
 
 function CompareMemRange(P1, P2: Pointer; Length: cardinal): integer;
-var i: integer;
+var i: cardinal;
 begin
 i := 0;
 result := 0;
@@ -132,7 +132,7 @@ end ;
 
 function CompareMem(P1, P2: Pointer; Length: cardinal): Boolean;
 var
-  i: Integer;
+  i: cardinal;
 begin
   for i := 0 to Length - 1 do
   begin
@@ -280,7 +280,7 @@ end;
 
 function AnsiStrLComp(S1, S2: PChar; MaxLen: cardinal): integer;
 
-Var I : longint;
+Var I : cardinal;
 
 begin
   Result:=0;
@@ -306,7 +306,7 @@ end ;
 
 function AnsiStrLIComp(S1, S2: PChar; MaxLen: cardinal): integer;
 
-Var I : longint;
+Var I : cardinal;
 
 begin
   Result:=0;
@@ -538,7 +538,7 @@ function IntToHex(Value: integer; Digits: integer): string;
 var i: integer;
 begin
  SetLength(result, digits);
- for i := 0 to digits - 1 do 
+ for i := 0 to digits - 1 do
   begin
    result[digits - i] := HexDigits[value and 15];
    value := value shr 4;
@@ -550,7 +550,7 @@ function IntToHex(Value: int64; Digits: integer): string;
 var i: integer;
 begin
  SetLength(result, digits);
- for i := 0 to digits - 1 do 
+ for i := 0 to digits - 1 do
   begin
    result[digits - i] := HexDigits[value and 15];
    value := value shr 4;
@@ -846,7 +846,7 @@ begin
                 ToAdd:=StringOfChar('0',Index)+ToAdd
               else
                 // + 1 to accomodate for - sign in length !!
-                Insert(StringOfChar('0',Index+1),toadd,2);  
+                Insert(StringOfChar('0',Index+1),toadd,2);
               end;
         'E' : begin
               CheckArg(vtExtended,true);
@@ -932,7 +932,7 @@ begin
   if fmtlen > 0 then
     Move(fmt,F[1],fmtlen);
   S:=Format (F,Args);
-  If Length(S)>Buflen then
+  If Cardinal(Length(S))>Buflen then
     Result:=Length(S)
   else
     Result:=Buflen;
@@ -1134,24 +1134,24 @@ begin
   If (Value<MinDateTime) or (Value>MaxDateTime) then
     Raise EConvertError.CreateFmt (SInvalidDateTime,[Value]);
   Result:=Value;
-end; 
+end;
 
 Function FloatToCurr (Const Value : Extended) : Currency;
 begin
-    
-end; 
+
+end;
 
 Function CurrToStr(Value: Currency): string;
 begin
-end; 
+end;
 
 function StrToCurr(const S: string): Currency;
 begin
-end; 
+end;
 
 function StrToBool(const S: string): Boolean;
 
-Var 
+Var
   Temp : String;
   D : Double;
   Code : word;
@@ -1167,14 +1167,14 @@ begin
     result:=false
   else
     Raise EConvertError.CreateFmt(SInvalidBoolean,[S]);
-end; 
+end;
 
 function BoolToStr(B: Boolean): string;
 begin
   If B then
     Result:='TRUE'
   else
-    Result:='FALSE'; 
+    Result:='FALSE';
 end;
 
 {==============================================================================}
@@ -1215,7 +1215,7 @@ Function LastDelimiter(const Delimiters, S: string): Integer;
 
 begin
   Result:=Length(S);
-  While (Result>0) and (Pos(S[Result],Delimiters)=0) do 
+  While (Result>0) and (Pos(S[Result],Delimiters)=0) do
     Dec(Result);
 end;
 
@@ -1277,7 +1277,10 @@ const
 
 {
   $Log$
-  Revision 1.9  2000-12-07 21:58:30  michael
+  Revision 1.10  2000-12-16 15:58:18  jonas
+    * removed warnings about possible range check errors
+
+  Revision 1.9  2000/12/07 21:58:30  michael
   + Merged lastdelimiter from fixbranch
 
   Revision 1.8  2000/12/06 22:55:29  michael