Einzelnen Beitrag anzeigen

gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#2

Re: Compiler Direktive OVERFLOWCHECKS

  Alt 25. Aug 2009, 15:03
Eigentlich hat keiner so richtig recht, und meiner Meinung macht Delphi nicht das, was es soll. Experimentell ist es so, daß die letzte Anweisung für die gesamte Unit gilt, das folgende Testprogramm gibt zweimal 0 aus, kommentiert man das letzte {$OVERFLOWCHECKS OFF} aus, so wird nur der Runtime Error 215 ausgegebeben, d.h. das erste inc macht schon den Fehler.

Wenn schon global, hätte ich vermutet, daß die erste Einstellung gilt. (BP7 verhält sich wie erwartet, d.h. der Check ist wirklich lokal)

Delphi-Quellcode:
program xx;
{$apptype console}
var
  b1,b2: byte;
begin
  b1 := 255;
  b2 := 255;
  {$r-}
  {$OVERFLOWCHECKS OFF} 
  inc(b1);
  {$OVERFLOWCHECKS ON} 
  writeln(b1);
  inc(b2);
  {$OVERFLOWCHECKS OFF}  
  writeln(b2);
end.
Gruß Gammatester
  Mit Zitat antworten Zitat