diff options
Diffstat (limited to 'clang-tools-extra/clangd/unittests/ParsedASTTests.cpp')
-rw-r--r-- | clang-tools-extra/clangd/unittests/ParsedASTTests.cpp | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/clang-tools-extra/clangd/unittests/ParsedASTTests.cpp b/clang-tools-extra/clangd/unittests/ParsedASTTests.cpp index da55e541d03..65020bf2a95 100644 --- a/clang-tools-extra/clangd/unittests/ParsedASTTests.cpp +++ b/clang-tools-extra/clangd/unittests/ParsedASTTests.cpp @@ -230,26 +230,28 @@ TEST(ParsedASTTest, CanBuildInvocationWithUnknownArgs) { TEST(ParsedASTTest, CollectsMainFileMacroExpansions) { Annotations TestCase(R"cpp( #define MACRO_ARGS(X, Y) X Y + // - premable ends, macros inside preamble are not considered in main file. ^ID(int A); // Macro arguments included. ^MACRO_ARGS(^MACRO_ARGS(^MACRO_EXP(int), A), ^ID(= 2)); // Macro names inside other macros not included. - #define FOO BAR - #define BAR 1 + #define ^MACRO_ARGS2(X, Y) X Y + #define ^FOO BAR + #define ^BAR 1 int A = ^FOO; // Macros from token concatenations not included. - #define CONCAT(X) X##A() - #define PREPEND(X) MACRO##X() - #define MACROA() 123 + #define ^CONCAT(X) X##A() + #define ^PREPEND(X) MACRO##X() + #define ^MACROA() 123 int B = ^CONCAT(MACRO); int D = ^PREPEND(A) // Macros included not from preamble not included. #include "foo.inc" - #define assert(COND) if (!(COND)) { printf("%s", #COND); exit(0); } + #define ^assert(COND) if (!(COND)) { printf("%s", #COND); exit(0); } void test() { // Includes macro expansions in arguments that are expressions @@ -268,8 +270,7 @@ TEST(ParsedASTTest, CollectsMainFileMacroExpansions) { int D = DEF; )cpp"; ParsedAST AST = TU.build(); - const std::vector<SourceLocation> &MacroExpansionLocations = - AST.getMainFileExpansions(); + const std::vector<SourceLocation> &MacroExpansionLocations = AST.getMacros(); std::vector<Position> MacroExpansionPositions; for (const auto &L : MacroExpansionLocations) MacroExpansionPositions.push_back( |