forked from OSchip/llvm-project
![]() With this patch, we're able to parse smaller chunks of C++ code (statement, declaration), rather than translation-unit. The start symbol is listed in the grammar in a form of `_ := statement`, each start symbol has a dedicated state (`_ := • statement`). We create and track all these separate states in the LRTable. When we start parsing, we lookup the corresponding state to start the parser. LR pasing table changes with this patch: - number of states: 1467 -> 1471 - number of actions: 82891 -> 83578 - size of the table (bytes): 334248 -> 336996 Differential Revision: https://reviews.llvm.org/D125006 |
||
---|---|---|
.. | ||
Unit | ||
crash | ||
CMakeLists.txt | ||
check-cxx-bnf.test | ||
fuzzer.cpp | ||
glr-variant-start.cpp | ||
glr.cpp | ||
lex.c | ||
lit.cfg.py | ||
lit.local.cfg | ||
lit.site.cfg.py.in | ||
lr-build-basic.test | ||
lr-build-conflicts.test | ||
strip-directives.c |