]> granicus.if.org Git - clang/commitdiff
Move program actions implications to clang::InitializeFrontendOptions which already...
authorKovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com>
Sat, 28 Nov 2009 07:52:34 +0000 (07:52 +0000)
committerKovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com>
Sat, 28 Nov 2009 07:52:34 +0000 (07:52 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90029 91177308-0d34-0410-b5e6-96231b3b80d8

tools/clang-cc/Options.cpp
tools/clang-cc/clang-cc.cpp

index 5a298bb2468f466ee19ba393f3b06055fa2ee458..ac555ab9a7784962ebbf32cfec7a1c51136d0076 100644 (file)
@@ -831,13 +831,8 @@ void clang::InitializeDiagnosticOptions(DiagnosticOptions &Opts) {
 void clang::InitializeFrontendOptions(FrontendOptions &Opts) {
   using namespace frontendoptions;
 
-  // Select program action.
   Opts.ProgramAction = ProgAction;
-  if (PluginActionName.getPosition()) {
-    Opts.ProgramAction = frontend::PluginAction;
-    Opts.ActionName = PluginActionName;
-  }
-
+  Opts.ActionName = PluginActionName;
   Opts.CodeCompletionAt = CodeCompletionAt;
   Opts.DebugCodeCompletionPrinter = !NoCodeCompletionDebugPrinter;
   Opts.DisableFree = DisableFree;
@@ -850,6 +845,14 @@ void clang::InitializeFrontendOptions(FrontendOptions &Opts) {
   Opts.ShowTimers = TimeReport;
   Opts.ViewClassInheritance = InheritanceViewCls;
 
+  // Enforce certain program action implications.
+  if (!Opts.ActionName.empty())
+    Opts.ProgramAction = frontend::PluginAction;
+  if (!Opts.ViewClassInheritance.empty())
+    Opts.ProgramAction = frontend::InheritanceView;
+  if (!Opts.FixItLocations.empty())
+    Opts.ProgramAction = frontend::FixIt;
+
   // '-' is the default input if none is given.
   if (InputFilenames.empty()) {
     FrontendOptions::InputKind IK = InputType;
index 02eddc88f252e3788255d72e90f7e41d32cc6e61..3dfe51190db023757d9a4e67ae5e99bad2633661 100644 (file)
@@ -246,12 +246,6 @@ int main(int argc, char **argv) {
   if (Clang.getFrontendOpts().ShowTimers)
     ClangFrontendTimer = new llvm::Timer("Clang front-end time");
 
-  // Enforce certain implications.
-  if (!Clang.getFrontendOpts().ViewClassInheritance.empty())
-    Clang.getFrontendOpts().ProgramAction = frontend::InheritanceView;
-  if (!Clang.getFrontendOpts().FixItLocations.empty())
-    Clang.getFrontendOpts().ProgramAction = frontend::FixIt;
-
   for (unsigned i = 0, e = Clang.getFrontendOpts().Inputs.size(); i != e; ++i) {
     const std::string &InFile = Clang.getFrontendOpts().Inputs[i].second;