Author: Dmitri Gribenko Date: 2020-06-26T16:43:30+02:00 New Revision: fa1b488776185827274637f8fdd38b20b6b5c036
URL: https://github.com/llvm/llvm-project/commit/fa1b488776185827274637f8fdd38b20b6b5c036 DIFF: https://github.com/llvm/llvm-project/commit/fa1b488776185827274637f8fdd38b20b6b5c036.diff LOG: Work around a bug in MSVC in the syntax tree test Summary: MSVC does not handle raw string literals with embedded double quotes correctly. I switched the affected test case to use regular string literals insetad. Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D82636 Added: Modified: clang/unittests/Tooling/Syntax/TreeTest.cpp Removed: ################################################################################ diff --git a/clang/unittests/Tooling/Syntax/TreeTest.cpp b/clang/unittests/Tooling/Syntax/TreeTest.cpp index 5dd6cc747628..0e48e138c408 100644 --- a/clang/unittests/Tooling/Syntax/TreeTest.cpp +++ b/clang/unittests/Tooling/Syntax/TreeTest.cpp @@ -1636,33 +1636,33 @@ TEST_P(SyntaxTreeTest, StringLiteralRaw) { if (!GetParam().isCXX11OrLater()) { return; } - EXPECT_TRUE(treeDumpEqual( - R"cpp( -void test() { - R"SyntaxTree( - Hello "Syntax" \" - )SyntaxTree"; -} -)cpp", - R"txt( -*: TranslationUnit -`-SimpleDeclaration - |-void - |-SimpleDeclarator - | |-test - | `-ParametersAndQualifiers - | |-( - | `-) - `-CompoundStatement - |-{ - |-ExpressionStatement - | |-StringLiteralExpression - | | `-R"SyntaxTree( - Hello "Syntax" \" - )SyntaxTree" - | `-; - `-} -)txt")); + // This test uses regular string literals instead of raw string literals to + // hold source code and expected output because of a bug in MSVC up to MSVC + // 2019 16.2: + // https://developercommunity.visualstudio.com/content/problem/67300/stringifying-raw-string-literal.html + EXPECT_TRUE(treeDumpEqual( // + "void test() {\n" + " R\"SyntaxTree(\n" + " Hello \"Syntax\" \\\"\n" + " )SyntaxTree\";\n" + "}\n", + "*: TranslationUnit\n" + "`-SimpleDeclaration\n" + " |-void\n" + " |-SimpleDeclarator\n" + " | |-test\n" + " | `-ParametersAndQualifiers\n" + " | |-(\n" + " | `-)\n" + " `-CompoundStatement\n" + " |-{\n" + " |-ExpressionStatement\n" + " | |-StringLiteralExpression\n" + " | | `-R\"SyntaxTree(\n" + " Hello \"Syntax\" \\\"\n" + " )SyntaxTree\"\n" + " | `-;\n" + " `-}\n")); } TEST_P(SyntaxTreeTest, BoolLiteral) { _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits