Einzelnen Beitrag anzeigen

hellion

Registriert seit: 10. Jun 2010
4 Beiträge
 
#1

Warnung/Hint bei signed/unsigned Zuweisung erzwingen

  Alt 10. Jun 2010, 12:14
Hallo,

kann man den Delphi-Compiler erzwingen, eine Warnung bei Zuweisung von signed/unsigned Variablen auszulösen? z.B. im folgenden Fall:

procedure f1();
var
li : longint;
lw : longword;
begin
li := -1;
lw := li; // ==> hier findet eine Bereichsüberschreitung statt.
...
end;

In diesem Fall gibt Delphi keine Warnung aus. Die Anweisung ist aber gefährlich, da zur Laufzeit eine Exception ausgelöst werden kann!
Wann man dagegen "li := li + lw" schreibt, dann wird folgende Warnung erzeugt: "W1024: Combining signed and unsigned types - widened both operands"
Auch im ersten Fall hätte ganz gerne die Warnung W1024 oder eine alternatibe Warnung. Ich kenne PC-Lint für C - man wird bei solchen Zuweisungen hingewiesen!
Ich habe den CodeHealer und den Peganza Pascal Analyzer ausprobiert, diese lösen keine Warnung aus!
  Mit Zitat antworten Zitat