]> granicus.if.org Git - clang/commitdiff
Add --analyze-auto.
authorDaniel Dunbar <daniel@zuster.org>
Wed, 6 May 2009 02:12:32 +0000 (02:12 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Wed, 6 May 2009 02:12:32 +0000 (02:12 +0000)
 - Currently just an alias for --analyze, eventually we want to refit
   --analyze so that it is less automatic (i.e., does not force plist
   output and does not hard code the list of checks).

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

include/clang/Driver/ArgList.h
include/clang/Driver/Options.def
lib/Driver/Driver.cpp

index cff82c185eae802bc3a95089de957276cb95ccd5..84e0329a375e0d789785ffe668a96a9ed9c0dd36 100644 (file)
@@ -74,6 +74,9 @@ namespace driver {
     bool hasArg(options::ID Id, bool Claim=true) const { 
       return getLastArg(Id, Claim) != 0;
     }
+    bool hasArg(options::ID Id0, options::ID Id1, bool Claim=true) const { 
+      return getLastArg(Id0, Id1, Claim) != 0;
+    }
 
     /// getLastArg - Return the last argument matching \arg Id, or null.
     ///
index 5f029628e7bb1f3a6db8c880194dcc4f626c0841..5d35602e5b09fb4bb11b7be6bafa65e036a10418 100644 (file)
@@ -127,6 +127,7 @@ OPTION("-###", _HASH_HASH_HASH, Flag, INVALID, INVALID, "d", 0,
 OPTION("--CLASSPATH=", _CLASSPATH_EQ, Joined, INVALID, fclasspath_EQ, "", 0, 0, 0)
 OPTION("--CLASSPATH", _CLASSPATH, Separate, INVALID, fclasspath_EQ, "J", 0, 0, 0)
 OPTION("--all-warnings", _all_warnings, Flag, INVALID, Wall, "", 0, 0, 0)
+OPTION("--analyze-auto", _analyze_auto, Flag, INVALID, INVALID, "d", 0, 0, 0)
 OPTION("--analyze", _analyze, Flag, INVALID, INVALID, "d", 0, 
        "Run the static analyzer", 0)
 OPTION("--ansi", _ansi, Flag, INVALID, ansi, "", 0, 0, 0)
index 8df64ea6180bcf9bc75dea4c206d0cee9d25dfc5..f50db66c69c5bba08f06d935ba443260fb73ce74 100644 (file)
@@ -661,7 +661,8 @@ void Driver::BuildActions(const ArgList &Args, ActionList &Actions) const {
     
     // -{fsyntax-only,-analyze,emit-llvm,S} only run up to the compiler.
   } else if ((FinalPhaseArg = Args.getLastArg(options::OPT_fsyntax_only)) ||
-             (FinalPhaseArg = Args.getLastArg(options::OPT__analyze)) ||
+             (FinalPhaseArg = Args.getLastArg(options::OPT__analyze,
+                                              options::OPT__analyze_auto)) ||
              (FinalPhaseArg = Args.getLastArg(options::OPT_S))) {
     FinalPhase = phases::Compile;
 
@@ -762,7 +763,7 @@ Action *Driver::ConstructPhaseAction(const ArgList &Args, phases::ID Phase,
   case phases::Compile: {
     if (Args.hasArg(options::OPT_fsyntax_only)) {
       return new CompileJobAction(Input, types::TY_Nothing);
-    } else if (Args.hasArg(options::OPT__analyze)) {
+    } else if (Args.hasArg(options::OPT__analyze, options::OPT__analyze_auto)) {
       return new AnalyzeJobAction(Input, types::TY_Plist);
     } else if (Args.hasArg(options::OPT_emit_llvm) ||
                Args.hasArg(options::OPT_flto) ||