diff --git a/clang/include/clang/Tooling/ReplacementsYaml.h b/clang/include/clang/Tooling/ReplacementsYaml.h index 0bef5ed9823d..18d3259d7058 100644 --- a/clang/include/clang/Tooling/ReplacementsYaml.h +++ b/clang/include/clang/Tooling/ReplacementsYaml.h @@ -29,10 +29,7 @@ namespace yaml { /// \brief ScalarTraits to read/write std::string objects. template <> struct ScalarTraits { static void output(const std::string &Val, void *, llvm::raw_ostream &Out) { - // We need to put quotes around the string to make sure special characters - // in the string is not treated as YAML tokens. - std::string NormalizedVal = std::string("\"") + Val + std::string("\""); - Out << NormalizedVal; + Out << Val; } static StringRef input(StringRef Scalar, void *, std::string &Val) { diff --git a/clang/unittests/Tooling/ReplacementsYamlTest.cpp b/clang/unittests/Tooling/ReplacementsYamlTest.cpp index 627002a74e0f..a20dde76140b 100644 --- a/clang/unittests/Tooling/ReplacementsYamlTest.cpp +++ b/clang/unittests/Tooling/ReplacementsYamlTest.cpp @@ -36,34 +36,34 @@ TEST(ReplacementsYamlTest, serializesReplacements) { // NOTE: If this test starts to fail for no obvious reason, check whitespace. ASSERT_STREQ("---\n" - "MainSourceFile: \"/path/to/source.cpp\"\n" - "Context: \"some context\"\n" + "MainSourceFile: /path/to/source.cpp\n" + "Context: some context\n" "Replacements: \n" // Extra whitespace here! - " - FilePath: \"/path/to/file1.h\"\n" + " - FilePath: /path/to/file1.h\n" " Offset: 232\n" " Length: 56\n" - " ReplacementText: \"replacement #1\"\n" - " - FilePath: \"/path/to/file2.h\"\n" + " ReplacementText: 'replacement #1'\n" + " - FilePath: /path/to/file2.h\n" " Offset: 301\n" " Length: 2\n" - " ReplacementText: \"replacement #2\"\n" + " ReplacementText: 'replacement #2'\n" "...\n", YamlContentStream.str().c_str()); } TEST(ReplacementsYamlTest, deserializesReplacements) { std::string YamlContent = "---\n" - "MainSourceFile: \"/path/to/source.cpp\"\n" - "Context: \"some context\"\n" + "MainSourceFile: /path/to/source.cpp\n" + "Context: some context\n" "Replacements:\n" - " - FilePath: \"/path/to/file1.h\"\n" + " - FilePath: /path/to/file1.h\n" " Offset: 232\n" " Length: 56\n" - " ReplacementText: \"replacement #1\"\n" - " - FilePath: \"/path/to/file2.h\"\n" + " ReplacementText: 'replacement #1'\n" + " - FilePath: /path/to/file2.h\n" " Offset: 301\n" " Length: 2\n" - " ReplacementText: \"replacement #2\"\n" + " ReplacementText: 'replacement #2'\n" "...\n"; TranslationUnitReplacements DocActual; yaml::Input YAML(YamlContent); @@ -85,12 +85,12 @@ TEST(ReplacementsYamlTest, deserializesReplacements) { TEST(ReplacementsYamlTest, deserializesWithoutContext) { // Make sure a doc can be read without the context field. std::string YamlContent = "---\n" - "MainSourceFile: \"/path/to/source.cpp\"\n" + "MainSourceFile: /path/to/source.cpp\n" "Replacements:\n" - " - FilePath: \"target_file.h\"\n" + " - FilePath: target_file.h\n" " Offset: 1\n" " Length: 10\n" - " ReplacementText: \"replacement\"\n" + " ReplacementText: replacement\n" "...\n"; TranslationUnitReplacements DocActual; yaml::Input YAML(YamlContent);