Einzelnen Beitrag anzeigen

gammatester

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

AW: Schnelle Alternativen für Multiplikation mit 2

  Alt 23. Jan 2012, 09:06
Wenn überhaupt ist der sog. "Freepascal-Bug" ein Delphi-Bug: pred und succ sollten den gleichen Ergebnistyp haben wie das Argument. FreePascal, BorlandPascal und VirtualPascal machen das auch, nur Delphi in seiner unendlichen Weisheit definiert
function Pred(X: Ordinal): Integer; und behauptet dann noch frech:
Zitat:
The result, of the same type as X, is the predecessor of X.
(Quelle: http://docwiki.embarcadero.com/Libraries/en/System.Pred) Mit folgendem Programm
Delphi-Quellcode:
{$Q-,R-}
var
  b,c: byte;
begin
  b := 0;
  c := pred(b);
  writeln(c:6, pred(b):6);
end.
liefern FPC, BP7 und VP2.1 jeweils 255 255, die Delphi-Versionen D2 .. D12 allerdings 255 -1
  Mit Zitat antworten Zitat