AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Merkwürdiges Verhalten bei einer Delphi-eigenen Funktion und erweiterter Syntax
Thema durchsuchen
Ansicht
Themen-Optionen

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

Ein Thema von Delphi-Laie · begonnen am 29. Aug 2013 · letzter Beitrag vom 30. Aug 2013
 
Delphi-Laie

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

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

  Alt 29. Aug 2013, 14:22
Delphi-Version: 5
Hallo Delphifreunde!

Beim Versuch, jemandem zu demonstrieren, daß nicht alle Fehler vom Delphi-Compiler (Version 4) gefunden werden, kam ich auf die Idee, einfach

sqrt(-1)

in einen Quelltext einzufügen - die erweiterte Syntax ist eingeschaltet. Doch es kam bei der Syntaxprüfung die Fehlermeldung

"Anweisung erforderlich, aber Ausdruck vom Typ 'Real" gefunden."

Merkwürdig, das ist doch eine Funktion, die bei der erweiterten Syntax ihr Ergebnis nirdgendwohin weitergeben muß?!

Unter "Deklaration suchen" kam ich - wenig überraschend - in die Unit System (diese Quelle steht auch in der Hilfe), dort gibt es aber die Zeichenkette "sqrt" nicht. Vermutlich wurde eine ander Quelltextunit beigelegt, als die zur Compilierung verwendet wurde, oder sqrt ist "noch tiefer" im System verankert (nämlich im Compiler) als in der Unit "System" abgelegt worden zu sein, und "Deklaration" verweist dann einfach - fälschlicherweise - zur Unit "System".

Es kommt noch merkwürdiger: Über "System." Code Insight aufgerufen, und dort findet sich tatsächlich doch "procedure sqrt" (ohne weiteren Parameter). Also, als Prozedur müßte es nicht nur keinen Funktionswert haben, sondern überhaupt keinen zurückliefern imstande sein, kann sqrt, wenn man es benutzt, aber natürlich doch, denn es ist ja eine Funktion.

So ist das mit dem Vorführeffekt, der kann sogar auch nach einem Vierteljahrhundert Freizeitprogrammiererei bei einer solch simplen Angelegenheit zuschlagen.

Weiß jemand eine Erklärung? Ist die erweiterte Syntax nur bei selbstgeschriebenen Funktionen möglich?

Danke im voraus für Euer Interesse und ggf. auch für die Antwort(en)!

Gruß Delphi-Laie
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz