]> granicus.if.org Git - clang/commitdiff
Change -analyzer-config to use '=' as the key-value separator, and only
authorTed Kremenek <kremenek@apple.com>
Thu, 30 Aug 2012 05:49:16 +0000 (05:49 +0000)
committerTed Kremenek <kremenek@apple.com>
Thu, 30 Aug 2012 05:49:16 +0000 (05:49 +0000)
support the '-analyzer-config key=val' variant.

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

include/clang/Basic/DiagnosticDriverKinds.td
include/clang/Driver/CC1Options.td
lib/Frontend/CompilerInvocation.cpp

index 724a9a813b0b3b544032a3f0386f5287c3da54a9..e0a89a1cc38175b9d58066b7b39e4b3cb7a44642 100644 (file)
@@ -145,5 +145,5 @@ def note_drv_command_failed_diag_msg : Note<
 def err_analyzer_config_no_value : Error<
   "analyzer-config option '%0' has a key but no value">;
 def err_analyzer_config_multiple_values : Error<
-  "analyzer-config option '%0' should contain only one ':'">;
+  "analyzer-config option '%0' should contain only one '='">;
 }
index 9213d217ef7c2973dc3d44a970b9a28985ed0f51..53bbfa4ed25c3ae333c2a7f8fa7b4c3f6cd817d5 100644 (file)
@@ -120,9 +120,7 @@ def analyzer_checker_help : Flag<"-analyzer-checker-help">,
   HelpText<"Display the list of analyzer checkers that are available">;
 
 def analyzer_config : Separate<"-analyzer-config">,
-  HelpText<"Choose analyzer checkers to enable">;
-def analyzer_config_EQ : Joined<"-analyzer-config=">,
-  Alias<analyzer_config>;
+  HelpText<"Choose analyzer options to enable">;
 
 //===----------------------------------------------------------------------===//
 // Migrator Options
index 8935e775a73bbd072ca703432376370aea09706d..6f6ef42c6ff9676cc9aa809e8800f68b353b325d 100644 (file)
@@ -1161,20 +1161,20 @@ static bool ParseAnalyzerArgs(AnalyzerOptions &Opts, ArgList &Args,
     const Arg *A = *it;
     A->claim();
     // We can have a list of comma separated config names, e.g:
-    // '-analyzer-config=key1:val1,key2:val2'
+    // '-analyzer-config key1=val1,key2=val2'
     StringRef configList = A->getValue(Args);
     SmallVector<StringRef, 4> configVals;
     configList.split(configVals, ",");
     for (unsigned i = 0, e = configVals.size(); i != e; ++i) {
       StringRef key, val;
-      llvm::tie(key, val) = configVals[i].split(":");
+      llvm::tie(key, val) = configVals[i].split("=");
       if (val.empty()) {
         Diags.Report(SourceLocation(),
                      diag::err_analyzer_config_no_value) << configVals[i];
         Success = false;
         break;
       }
-      if (val.find(':') != StringRef::npos) {
+      if (val.find('=') != StringRef::npos) {
         Diags.Report(SourceLocation(),
                      diag::err_analyzer_config_multiple_values)
           << configVals[i];