]> granicus.if.org Git - clang/commitdiff
[driver] Add a warning for when -mcpu= is specified without an argument. There
authorChad Rosier <mcrosier@apple.com>
Wed, 22 Feb 2012 17:55:22 +0000 (17:55 +0000)
committerChad Rosier <mcrosier@apple.com>
Wed, 22 Feb 2012 17:55:22 +0000 (17:55 +0000)
are likely many other OPT_xxxx_EQ options that could/should be added here.
rdar://10704648

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

include/clang/Basic/DiagnosticDriverKinds.td
lib/Driver/Driver.cpp

index f3d9504891f2c5eaa41ddaee702c168d4c37df5a..3ada80f6719a71a6e58190ff6c0b786d0186feef 100644 (file)
@@ -105,6 +105,8 @@ def warn_drv_preprocessed_input_file_unused : Warning<
 def warn_drv_unused_argument : Warning<
   "argument unused during compilation: '%0'">,
   InGroup<DiagGroup<"unused-command-line-argument">>;
+def warn_drv_empty_joined_argument : Warning<
+  "joined argument expects addition arg: '%0'">;
 def warn_drv_not_using_clang_cpp : Warning<
   "not using the clang preprocessor due to user override">;
 def warn_drv_not_using_clang_cxx : Warning<
index f9e5d82c02a6b518f40325bd59777e673bdeb082..06953170d72c4c27aca0ec3bab554fffa834a62f 100644 (file)
@@ -113,6 +113,12 @@ InputArgList *Driver::ParseArgStrings(ArrayRef<const char *> ArgList) {
       Diag(clang::diag::err_drv_unsupported_opt) << A->getAsString(*Args);
       continue;
     }
+
+    // Warn about -mcpu= without an argument.
+    if (A->getOption().matches(options::OPT_mcpu_EQ) && 
+        A->containsValue("")) {
+      Diag(clang::diag::warn_drv_empty_joined_argument) << A->getAsString(*Args);
+    }
   }
 
   return Args;