aboutsummaryrefslogtreecommitdiffstats
path: root/m0/mutator-lvl0.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'm0/mutator-lvl0.cpp')
-rw-r--r--m0/mutator-lvl0.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/m0/mutator-lvl0.cpp b/m0/mutator-lvl0.cpp
index cdd625f..abbcb52 100644
--- a/m0/mutator-lvl0.cpp
+++ b/m0/mutator-lvl0.cpp
@@ -7638,12 +7638,20 @@ public:
void EndSourceFileAction() override {}
std::unique_ptr<ASTConsumer> CreateASTConsumer(CompilerInstance &CI, StringRef file) override {
+#if __clang_major__ <= 9
CI.getPreprocessor().addPPCallbacks(llvm::make_unique<PPInclusion>(&CI.getSourceManager()));
+#elif __clang_major__ >= 10
+ CI.getPreprocessor().addPPCallbacks(std::make_unique<PPInclusion>(&CI.getSourceManager()));
+#endif
DiagnosticsEngine &DiagEngine = CI.getPreprocessor().getDiagnostics();
Mutator0DiagnosticConsumer* M0DiagConsumer = new Mutator0DiagnosticConsumer;
DiagEngine.setClient(M0DiagConsumer, true);
TheRewriter.setSourceMgr(CI.getSourceManager(), CI.getLangOpts());
+#if __clang_major__ <= 9
return llvm::make_unique<MyASTConsumer>(TheRewriter);
+#elif __clang_major__ >= 10
+ return std::make_unique<MyASTConsumer>(TheRewriter);
+#endif
}
private: