diff options
author | Volodymyr Sapsai <vsapsai@apple.com> | 2019-01-17 00:20:43 +0000 |
---|---|---|
committer | Volodymyr Sapsai <vsapsai@apple.com> | 2019-01-17 00:20:43 +0000 |
commit | 4daffc176fddbedf0950cba2efd7f64201ec468d (patch) | |
tree | cfbc20a304a59c04b22efda0bccf77a2bb1082c5 | |
parent | 7ec7a299a2f615f30b1e06d82f56434b5fde280c (diff) |
[Frontend] Make WrapperFrontendAction call WrappedAction.PrepareToExecuteAction.
Fixes `-emit-header-module` when GenerateHeaderModuleAction is wrapped
by another frontend action.
rdar://problem/47302588
Reviewers: rsmith, arphaman
Reviewed By: arphaman
Subscribers: jkorous, dexonsmith, cfe-commits
Differential Revision: https://reviews.llvm.org/D56766
llvm-svn: 351402
-rw-r--r-- | clang/include/clang/Frontend/FrontendAction.h | 1 | ||||
-rw-r--r-- | clang/lib/Frontend/FrontendAction.cpp | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/clang/include/clang/Frontend/FrontendAction.h b/clang/include/clang/Frontend/FrontendAction.h index 22314386e060..530849537a37 100644 --- a/clang/include/clang/Frontend/FrontendAction.h +++ b/clang/include/clang/Frontend/FrontendAction.h @@ -305,6 +305,7 @@ class WrapperFrontendAction : public FrontendAction { std::unique_ptr<FrontendAction> WrappedAction; protected: + bool PrepareToExecuteAction(CompilerInstance &CI) override; std::unique_ptr<ASTConsumer> CreateASTConsumer(CompilerInstance &CI, StringRef InFile) override; bool BeginInvocation(CompilerInstance &CI) override; diff --git a/clang/lib/Frontend/FrontendAction.cpp b/clang/lib/Frontend/FrontendAction.cpp index f5226380b4dd..9ab8001b002a 100644 --- a/clang/lib/Frontend/FrontendAction.cpp +++ b/clang/lib/Frontend/FrontendAction.cpp @@ -1045,6 +1045,9 @@ PreprocessorFrontendAction::CreateASTConsumer(CompilerInstance &CI, llvm_unreachable("Invalid CreateASTConsumer on preprocessor action!"); } +bool WrapperFrontendAction::PrepareToExecuteAction(CompilerInstance &CI) { + return WrappedAction->PrepareToExecuteAction(CI); +} std::unique_ptr<ASTConsumer> WrapperFrontendAction::CreateASTConsumer(CompilerInstance &CI, StringRef InFile) { |