Der ST-Parser hat in einem ST-Codekonstrukt einen Syntaxfehler gefunden. Das in der Fehlermeldung genannte Codeelement fehlt. Die Position im Code, wo das Element erwartet wird, ist im Code-Editor rot unterstrichen.
In dieser Fehlermeldung können die folgenden Codeelemente gefordert werden:
Fehlermeldung |
Bedeutung / Abhilfe |
---|---|
';' erwartet. |
Vervollständigen Sie die markierte Zeile des Ausdrucks durch Einfügen eines Semikolon am Ende. |
'(' oder ':=' erwartet |
Im unterstrichenen Ausdruck fehlt entweder eine öffnende Klammer '(' zum Festlegen der Priorität der Operanden innerhalb einer Anweisung oder es fehlt der Zuweisungsoperator ':='. |
')' erwartet. |
Im unterstrichenen Ausdruck fehlt eine schließende runde Klammer ')' zum Festlegen der Priorität der Operanden innerhalb einer Anweisung. |
':=' erwartet. |
In der unterstrichenen Codezeile fehlt ein Zuweisungsoperator ':='. Eine Zuweisung ist die einfachste Art einer ST-Anweisung. Sie kopiert den Wert des Ausdrucks auf der rechten Seite in die Variable auf der linken Seite. Die Variable links und der Wert des Ausdrucks rechts müssen beide denselben Datentyp haben. |
',' erwartet. |
In dem Aufruf einer Funktion oder eines Funktionsbausteins fehlt ein Komma zur Trennung der übergebenen Parameter. |
'END_FOR' erwartet. |
'FOR'-Anweisungen müssen durch ein 'END_FOR'-Element abgeschlossen werden. Korrekte Syntax: FOR a:=1 TO 10 BY 3 DO incr:= start + a; END_FOR; |
']' erwartet. |
In der unterstrichenen FOR-Wiederholungsanweisung fehlt eine schließende eckige Klammer. Die Steuervariable muss in eckige Klammern eingeschlossen sein: FOR a:=1 TO 10 BY 3 DO f[a] :=b; END_FOR; |
'TO' erwartet. 'DO' erwartet. |
Es fehlt das Schlüsselwort 'TO' oder 'DO'. Die Wiederholungsanweisung FOR ist nicht vollständig. Korrekte Syntax: FOR a:=1 TO 10 BY 3 DO incr:= start + a; END_FOR; |
'THEN' erwartet. |
Eine Auswahlanweisung (IF oder ELSEIF) ist ohne das Element 'THEN' nicht vollständig. Korrekte Syntax: IF a < b THEN c:=1; ELSIF a=b THEN c:=2; ELSE c:=3; END_IF; |
'END_IF' erwartet. |
'IF'-Anweisungen müssen durch ein 'END_IF'-Element abgeschlossen werden. Die korrekte Syntax ist oben gezeigt. |
'END_CASE' erwartet. |
'CASE'-Anweisungen müssen durch ein 'END_CASE'-Element abgeschlossen werden. Korrekte Syntax: CASE f OF 1: a:=3; 2..5: a:=4; 6: a:=2; b:=1; ELSE a:=0; END_CASE; |
'OF' erwartet. |
Es fehlt das Schlüsselwort 'OF'. Die Auswahlanweisung CASE ist nicht vollständig. Dieses Schlüsselwort führt eine Liste mit den auszuwertenden Übereinstimmungen ein. |
Der Editor-Assistent verhindert die Eingabe syntaktischer Fehler. Aus dem Editor-Assistenten lassen sich mit Platzhaltern versehene Syntax-Vorlagen einfügen.
Weitere Informationen zur ST-Syntax finden Sie im Thema "Code-Elemente in ST".