]> granicus.if.org Git - clang/commitdiff
When emitting a preprocessed file with implicit module imports, make sure line direct...
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>
Mon, 29 Apr 2013 17:26:22 +0000 (17:26 +0000)
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>
Mon, 29 Apr 2013 17:26:22 +0000 (17:26 +0000)
rdar://13722737

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180718 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Frontend/PrintPreprocessedOutput.cpp
test/Preprocessor/pp-modules.c

index 3cef68df32c61a79c541366adec42455843ad41e..9fd36494358052de85df235d0618f0f56287a430 100644 (file)
@@ -335,6 +335,7 @@ void PrintPPOutputPPCallbacks::InclusionDirective(SourceLocation HashLoc,
     MoveToLine(HashLoc);
     OS << "@import " << Imported->getFullModuleName() << ";"
        << " /* clang -E: implicit import for \"" << File->getName() << "\" */";
+    EmittedTokensOnThisLine = true;
   }
 }
 
index c6c3ecc034f71c03521cabb8f744f2c2ec984adf..213a5fd23c8d9287cfccd26859a736d6d897c4de 100644 (file)
@@ -9,3 +9,7 @@ int bar();
 int foo();
 // CHECK: @import Module; /* clang -E: implicit import for "{{.*Headers[/\\]Module.h}}" */
 #include <Module/Module.h>
+
+#include "pp-modules.h" // CHECK: # 1 "{{.*}}pp-modules.h" 1
+// CHECK: @import Module; /* clang -E: implicit import for "{{.*}}Module.h" */{{$}}
+// CHECK: # 14 "{{.*}}pp-modules.c" 2