aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/FrontendActions.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2017-06-01 20:10:35 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2017-06-01 20:10:35 +0000
commitc784e96eac1bbbde394ce51a560381d3edcdde7d (patch)
treeb7c88689768a6b57eadb0f9469d55abbaccaeb8a /clang/lib/Frontend/FrontendActions.cpp
parent85a83c2cedc2884e9c08e5031198c42beeeb54f1 (diff)
downloadllvm-c784e96eac1bbbde394ce51a560381d3edcdde7d.zip
llvm-c784e96eac1bbbde394ce51a560381d3edcdde7d.tar.gz
llvm-c784e96eac1bbbde394ce51a560381d3edcdde7d.tar.bz2
Escape filenames in module map line marker directives, to unbreak Windows build bots.
llvm-svn: 304464
Diffstat (limited to 'clang/lib/Frontend/FrontendActions.cpp')
-rw-r--r--clang/lib/Frontend/FrontendActions.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/clang/lib/Frontend/FrontendActions.cpp b/clang/lib/Frontend/FrontendActions.cpp
index baaf93b..89ac385 100644
--- a/clang/lib/Frontend/FrontendActions.cpp
+++ b/clang/lib/Frontend/FrontendActions.cpp
@@ -546,8 +546,11 @@ void PrintPreprocessedAction::ExecuteAction() {
// module itself before switching to the input buffer.
auto &Input = getCurrentInput();
if (Input.getKind().getFormat() == InputKind::ModuleMap) {
- if (Input.isFile())
- (*OS) << "# 1 \"" << Input.getFile() << "\"\n";
+ if (Input.isFile()) {
+ (*OS) << "# 1 \"";
+ OS->write_escaped(Input.getFile());
+ (*OS) << "\"\n";
+ }
// FIXME: Include additional information here so that we don't need the
// original source files to exist on disk.
getCurrentModule()->print(*OS);