Wie stoppe ich den Delphi-Compiler bei einem bestimmten Warncode?

8

Ich möchte, dass der Compiler bei einer bestimmten Warnung stoppt, als wäre es ein Fehler.

Ziel ist es, die Berücksichtigung von Warnungen zu erzwingen, die für den Code wirklich schädlich sein können (nicht jede Warnung ist hinsichtlich des Schweregrads gleich).

Zum Beispiel möchte ich, dass der Compiler bei solchen Warnungen aufhört:

  • Das Ergebnis kann möglicherweise nicht initialisiert werden
  • Verwendung einer veralteten Methode
  • ...

Ich habe keine Option in der IDE gefunden, vielleicht im Befehlszeilen-Compiler?

Delphi 10.3.2

Vielen Dank,

user315561
quelle

Antworten:

13

Dies ist dokumentiert: Warnmeldungen (Delphi)

Sie verwenden die Compiler-Direktive

{$WARN identifier ERROR}

um die genannte Warnung identifierals Fehler zu behandeln . Die Dokumentationsseite enthält eine Liste aller möglichen Warnungen. Zum Beispiel,

{$WARN NO_RETVAL ERROR}

wird behandeln

W1035 Return value of function '%s' might be undefined

als Fehler.

Update: Wie Sertac hervorhebt , können Sie diese Einstellung auch global für das Projekt aktivieren, indem Sie Projektoptionen , Bulding , Delphi Compiler , Hinweise und Warnungen sowie Ausgabewarnungen verwenden .

Andreas Rejbrand
quelle
4
Auch in Compileroptionen -> Hinweise und Warnungen -> Ausgabewarnungen -> "Rückgabewert der Funktion ist möglicherweise undefiniert": [false | true | error].
Sertac Akyuz
@SertacAkyuz: Sehr wahr. Ich werde diese Informationen hinzufügen.
Andreas Rejbrand