Comments (4)
That's kinda duplicate of #44. The cause is the same. The underlying antlr4ts library tries to optimize the ATN from this grammar and fails.
However, matching an empty input string is a problem anyway and must be avoided. ANTLR4 will issue a warning for that.
from vscode-antlr4.
FWIW I would not consider a rule that may match empty string and a warning (note: not an error) generated by the ANTLR runtime to be sufficient reason to expect no parse tree at all.
IIUC the matching behaviour is also subtly different. When examining the output generated by startRule
in the minimal example, accessing the generated digits
will never be null
(interesting for languages such as C# or java), but instead will always generate a DigitsContext
node.
While that context does not necessarily have any children, it makes for a different API
from vscode-antlr4.
Just as a small note: Antlr only generates a warning for a rule matching an empty string if this rule is made optional in another rule using it. (In that case, the outcome is non-deterministic.)
from vscode-antlr4.
I see. Didn't think of that possibility (why would one want a node for no match?), but it seems people have their own use cases. Thanks.
from vscode-antlr4.
Related Issues (20)
- Update to 2.4.2 broke project HOT 7
- Split grammar not generating properly, and can't debug HOT 3
- Debug antlr in vscode with launch.json HOT 10
- Cannot build .vsix HOT 2
- Extension does not work on Windows HOT 2
- TypeError: Cannot read properties of undefined (reading 'toString') HOT 1
- Formatting HOT 2
- railroad diagram: empty route and repeating routes are ambigious HOT 3
- Tokens not found if there's no lexer file, but only a .tokens file
- Bug: Generate valid input for rule ignores negation
- How can I have my parser tree graphical visualizations with my antlr grammar file and input for parse? HOT 3
- Visual parse tree not showing for version 2.4.5 HOT 5
- A Bottom part of big digram can be hidden. HOT 15
- [Internal Error] Unhandled error message (code 50, message: syntax error: mismatched character '<EOF>' expecting ''' Please file a bug report at https://github.com/mike-lischke/vscode-antlr4/issues) HOT 5
- [Feature Request] live tester HOT 4
- implicit token command not found HOT 1
- Feature/Bug: Disable cache for Parse Tree HOT 8
- Changing token.type is invalid HOT 1
- breakpoints are ignored in debug mode HOT 3
- Ignore Byte Order Mark in Grammars HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vscode-antlr4.