Describe the bug
The signature of a function declaration, defined in the Signature nonterminal, contains a type, optionally prepended by modifiers (java, default, test). A type that (textually) consists of a modifier and a type yields an ambiguous parse.
To Reproduce
parse(#Signature, "testint foo()")
Desktop (please complete the following information):