![]() A few cases were not handled correctly. Notably: #define ID(X) X #define HIDE a ID(b) HIDE spelledForExpanded() would claim HIDE is an equivalent range of the 'b' it contains, despite the fact that HIDE also covers 'a'. While trying to fix this bug, I found findCommonRangeForMacroArgs hard to understand (both the implementation and how it's used in spelledForExpanded). It relies on details of the SourceLocation graph that are IMO fairly obscure. So I've added/revised quite a lot of comments and made some naming tweaks. Fixes https://github.com/clangd/clangd/issues/1289 Differential Revision: https://reviews.llvm.org/D134618 |
||
---|---|---|
.. | ||
BuildTree.cpp | ||
CMakeLists.txt | ||
ComputeReplacements.cpp | ||
Mutations.cpp | ||
Nodes.cpp | ||
Synthesis.cpp | ||
TokenBufferTokenManager.cpp | ||
Tokens.cpp | ||
Tree.cpp |