Deklaration von Parametern stimmt nicht mit der Verwendung überein

Top  Previous  Next

Meldungen > Deklaration von Parametern stimmt nicht mit der Verwendung überein

 

Diese Fehlermeldung (oder Warnung s.u.) erscheint, wenn eine Produktion oder ein Token entweder mit einer falschen Anzahl von Parametern aufgerufen wird oder, wenn die Parameter-Typen nicht konvertibel sind.

 

Die Fehlermeldung erscheint beispielsweise im folgenden Fall. Die Parameterdeklaration der Produktion XXX sei:

 

Parameter: int xs

 

und der Aufruf laute:

 

{{str s = "Hallo";}}

 

XXX[s]  // falscher Parameter-Typ

 

Eine Variable vom Typ str ist nicht in einen "int"-Wert konvertierbar. Auch das Weglassen des Parameters:

 

XXX  // fehlender Parameter

 

führt zur gleichen Fehlermeldung.

 

 

Als Warnung erscheint diese Meldung, wenn die Produktion innerhalb einer Vorausschau verwendet wird. In Vorausschau-Produktionen werden keine semantischen Aktionen durchgeführt und demnach auch Parameter nicht verwendet. In komplexen Projekten kann es aber vorkommen, dass die gleiche Produktion auch mit semantischen Aktionen verwendet wird, was u.U. erst bei Ausführung des Transformations-Programms zu einem Fehler führt.

 

Um sicher zu gehen, dass kein Fehler auftreten kann, können "Dummy"-Parameter eingesetzt werden.



Diese Seite gehört zur TextTransformer Dokumentation

Home  Inhalt  English