Einzelnen Beitrag anzeigen

Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#6

AW: Merkwürdiges Verhalten bei einer Delphi-eigenen Funktion und erweiterter Syntax

  Alt 29. Aug 2013, 20:06
Es könnte auch einfach an dem veralteten Delphi 5 liegen, bei dem das sqrt direkt vom Compiler aufgelöst wird. In neueren Delphi-Versionen ist das je nach Zielplattform zwar unterschiedlich, aber als echte Assembler-Funktion in System.pas implementiert und da funktioniert die erweiterte Syntax auch.
Hallo Uwe Raabe, Deine Antwort trifft es wohl am ehesten.

Delphi 7 zeigt exakt das gleiche Verhalten. Turbo-Delphi hingegen compiliert es (m.E. das einzig korrekte Verhalten unter der sog. "erweiterten Syntax"), und bei "Deklaration suchen" wird auf eine gleichnamige (Assembler-)Funktion in der Unit System verwiesen (die wird dann tatsächlich gefunden). Auch wird, wie schon gesagt, "sqrt(-1)" als alleiniger Befehl ohne jede Wertzuweisung vom Compiler widerstandslos akzeptiert (der negative Radikant ist ja offensichtlich, aber alles kann man eben nicht berücksichtigen, soll die Compilierung nicht zu langsam werden), und beim Programmablauf kommt natürlich eine Exzeption.
  Mit Zitat antworten Zitat