You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Parameterized nonterminals in concrete patterns are not fully supported by the interpreter. There is a workaround where one would use the "filled in" nonterminal in a grammar production to ensure that the quotes are generated, but this only works when type parameters are bound to syntactic nonterminals, not when bound to lexical ones.
To Reproduce
rascal>syntax A = "a";
ok
rascal>lexical B = "b";
ok
rascal>syntax C[&T] = &T;
ok
rascal>syntax D = C[A];
ok
rascal>syntax E = C[B];
ok
rascal>(C[A])`a`
C[A]: (C[A]) `a`
rascal>(C[B])`b`
|prompt:///|(7,1):Undeclared non-terminal: C_W3NvcnQoIkIiKV000 in module $GENERATED_PARSER$1842140283
Advice: |https://www.rascal-mpl.org/docs/Rascal/Errors/CompileTimeErrors/UndeclaredNonTerminal|
|prompt:///|(7,1):Undeclared non-terminal: C_W3NvcnQoIkIiKV000 in module $GENERATED_PARSER$1842140283
Advice: |https://www.rascal-mpl.org/docs/Rascal/Errors/CompileTimeErrors/UndeclaredNonTerminal|
|prompt:///|(0,9,<1,0>,<1,9>): Parse error in concrete syntax fragment
Advice: |https://www.rascal-mpl.org/docs/Rascal/Errors/CompileTimeErrors/SyntaxError|
ok
Desktop (please complete the following information):
Context: VS Code plugin
Rascal Version: 0.34.1
The text was updated successfully, but these errors were encountered:
Describe the bug
Parameterized nonterminals in concrete patterns are not fully supported by the interpreter. There is a workaround where one would use the "filled in" nonterminal in a grammar production to ensure that the quotes are generated, but this only works when type parameters are bound to syntactic nonterminals, not when bound to lexical ones.
To Reproduce
Desktop (please complete the following information):
The text was updated successfully, but these errors were encountered: