[all-commits] [llvm/llvm-project] 9f38da: [pseudo] Implement the GLR parsing algorithm.
Haojian Wu via All-commits
all-commits at lists.llvm.org
Tue May 3 11:28:27 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 9f38da258ea75874808e6da756bac831cada180f
https://github.com/llvm/llvm-project/commit/9f38da258ea75874808e6da756bac831cada180f
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2022-05-03 (Tue, 03 May 2022)
Changed paths:
M clang-tools-extra/pseudo/include/clang-pseudo/Forest.h
A clang-tools-extra/pseudo/include/clang-pseudo/GLR.h
M clang-tools-extra/pseudo/lib/CMakeLists.txt
A clang-tools-extra/pseudo/lib/GLR.cpp
A clang-tools-extra/pseudo/test/glr.cpp
M clang-tools-extra/pseudo/tool/ClangPseudo.cpp
M clang-tools-extra/pseudo/unittests/CMakeLists.txt
A clang-tools-extra/pseudo/unittests/GLRTest.cpp
Log Message:
-----------
[pseudo] Implement the GLR parsing algorithm.
This patch implements a standard GLR parsing algorithm, the
core piece of the pseudoparser.
- it parses preprocessed C++ code, currently it supports correct code
only and parse them as a translation-unit;
- it produces a forest which stores all possible trees in an efficient
manner (only a single node being build for per (SymbolID, Token Range));
no disambiguation yet;
Reland with a fix for g++'s -fpermissive error on previous declaration `GSS& GSS;`.
Differential Revision: https://reviews.llvm.org/D121150
More information about the All-commits
mailing list