diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-06-18 00:53:41 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2011-06-18 00:53:41 +0000 |
commit | 90b6a2a6a78273b0df86485c887bb66c3daaaadf (patch) | |
tree | 1c061ed10b66cdc3877a25cdaa9a9da3d9298823 /clang/lib/ARCMigrate/ARCMTActions.cpp | |
parent | 0f3f9f78f8e8b0e13cef69edf22bc62860f5e9ea (diff) | |
download | bcm5719-llvm-90b6a2a6a78273b0df86485c887bb66c3daaaadf.tar.gz bcm5719-llvm-90b6a2a6a78273b0df86485c887bb66c3daaaadf.zip |
[arcmt] Fix the ARC migrator. -arcmt-modify requires running before the initialization of SourceManager
because it is going to modify the input file.
llvm-svn: 133323
Diffstat (limited to 'clang/lib/ARCMigrate/ARCMTActions.cpp')
-rw-r--r-- | clang/lib/ARCMigrate/ARCMTActions.cpp | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/clang/lib/ARCMigrate/ARCMTActions.cpp b/clang/lib/ARCMigrate/ARCMTActions.cpp index 4da928a0ebf..7de62d289ce 100644 --- a/clang/lib/ARCMigrate/ARCMTActions.cpp +++ b/clang/lib/ARCMigrate/ARCMTActions.cpp @@ -14,29 +14,24 @@ using namespace clang; using namespace arcmt; -void CheckAction::ExecuteAction() { - CompilerInstance &CI = getCompilerInstance(); +bool CheckAction::BeginInvocation(CompilerInstance &CI) { if (arcmt::checkForManualIssues(CI.getInvocation(), getCurrentFile(), getCurrentFileKind(), CI.getDiagnostics().getClient())) - return; + return false; // errors, stop the action. // We only want to see warnings reported from arcmt::checkForManualIssues. CI.getDiagnostics().setIgnoreAllWarnings(true); - WrapperFrontendAction::ExecuteAction(); + return true; } CheckAction::CheckAction(FrontendAction *WrappedAction) : WrapperFrontendAction(WrappedAction) {} -void TransformationAction::ExecuteAction() { - CompilerInstance &CI = getCompilerInstance(); - if (arcmt::applyTransformations(CI.getInvocation(), getCurrentFile(), +bool TransformationAction::BeginInvocation(CompilerInstance &CI) { + return !arcmt::applyTransformations(CI.getInvocation(), getCurrentFile(), getCurrentFileKind(), - CI.getDiagnostics().getClient())) - return; - - WrapperFrontendAction::ExecuteAction(); + CI.getDiagnostics().getClient()); } TransformationAction::TransformationAction(FrontendAction *WrappedAction) |