[11:45:19] warning(200): mygrammar.g:14:57: Decision can match input such as "','" using multiple alternatives: 1, 2
As a result, alternative(s) 2 were disabled for that input
[11:45:19] warning(200): C:\Users\Jarrod Roberson\mygrammar.g:14:57: Decision can match input such as "','" using multiple alternatives: 1, 2
As a result, alternative(s) 2 were disabled for that input
Ich möchte in der Lage sein, Funktionen innerhalb anderer Funktionen zu verschachteln.
myfunction(x) ->
sqr(a) -> a * a,
y -> sqr(x).
Hier ist die Zeile, über die er sich beschwert
function : ID '(' args ')' '->' statement (',' statement)* ;
und so sieht es aus, wenn man die Alternative betrachtet
statement : ATOM
| expression
| assignment
| function
;
Ich verwende .
als Endregel meiner Erklärung
program : (statement'.')*;
So sieht das Synatx-Diagramm in ANTLRWorks aus
(Quelle: <a href="http://www.vertigrated.com/images/alternatives.png" rel="nofollow noreferrer">vertigrated.de </a>)
Ich mag es wirklich, wenn Dinge ohne Warnungen kompiliert werden/funktionieren. Wie kann ich diese Warnbedingung beheben?