Open sancarn opened 3 months ago
More specifically it seems to break when ByRef
AND arrayQualifier ()
is explicitely declared...
Correct:
vs half-broken but recovers
vs fully broken
From the antlr grammar I can't see any reason why this would be failing though...
positionalParam: (parameterMechanism wsc)? paramDcl;
parameterMechanism
: BYVAL
| BYREF
;
paramDcl
: untypedNameParamDcl
| typedNameParamDcl
;
untypedNameParamDcl: ambiguousIdentifier parameterType?;
parameterType: arrayDesignator? wsc AS wsc (typeExpression | ANY);
arrayDesignator: '(' wsc? ')';
ambiguousIdentifier
: IDENTIFIER
| ambiguousKeyword
;
IDENTIFIER
: [A-Z][A-Z0-9_]*
;
ambiguousKeyword
: ACCESS
| ALIAS
| APPACTIVATE
| APPEND
....
Thanks for reporting, but also for diving into it. I'll check it out when I get a chance (soon, hopefully).
This absolutely breaks syntax highlighting but I can't get it to break the parsing. Will attack this from a textmate grammar perspective.
Describe the bug Initially I noticed this when the Option Explicit error wasn't applicable for
stdCallback
andstdLambda
.Now I realise though that the outline doesn't work for these either. So I assume parsing is just broken.
Both these modules have the following declare:
after which it seems parsing breaks
To Reproduce
Minimally you can just load
stdCallback
orstdLambda
into vscode.