Hallo,
in folgendem Codefragment bekomme ich diese Compilerwarung:
[DCC Warnung] DECHash.pas(5316): W1012 Konstantenausdruck verletzt untere Grenzen
Delphi-Quellcode:
var
i, rounds: UInt32;
begin
// number of rounds = 2^cost, loop includes 0
if (FCost = 31) then
rounds := MaxLongint
else
rounds := (Int32(1) shl FCost) - 1;
FCost ist dabei ein UInt8.
Und leider zeigt die
IDE auf das ELSE wenn ich von der Warnunbg aus hinspringe.
Ein Ändern des Typecast auf UInt32(1) hat nicht geholfen.
Wer sich für mehr Kontext interessiert:
Delphi-Quellcode:
procedure THash_BCrypt.EksBlowfishSetup(var Password : TBytes;
PasswordSize : Integer);
in DECHash.pas hier:
https://github.com/decfpc/DelphiEncryptionCompendium
Was löst die Warnung aus?
Grüße
TurboMagic