Semantic checking for exception specifications should be triggered by
whether C++ exceptions are enabled, not exceptions in general.  PR9358.

llvm-svn: 126820
diff --git a/clang/lib/Sema/SemaExceptionSpec.cpp b/clang/lib/Sema/SemaExceptionSpec.cpp
index 5d7993b..123e185 100644
--- a/clang/lib/Sema/SemaExceptionSpec.cpp
+++ b/clang/lib/Sema/SemaExceptionSpec.cpp
@@ -160,7 +160,7 @@
 
     // If exceptions are disabled, suppress the warning about missing
     // exception specifications for new and delete operators.
-    if (!getLangOptions().Exceptions) {
+    if (!getLangOptions().CXXExceptions) {
       switch (New->getDeclName().getCXXOverloadedOperator()) {
       case OO_New:
       case OO_Array_New:
@@ -249,7 +249,7 @@
                                         bool *MissingExceptionSpecification,
                                      bool *MissingEmptyExceptionSpecification)  {
   // Just completely ignore this under -fno-exceptions.
-  if (!getLangOptions().Exceptions)
+  if (!getLangOptions().CXXExceptions)
     return false;
 
   if (MissingExceptionSpecification)
@@ -331,7 +331,7 @@
     const FunctionProtoType *Subset, SourceLocation SubLoc) {
 
   // Just auto-succeed under -fno-exceptions.
-  if (!getLangOptions().Exceptions)
+  if (!getLangOptions().CXXExceptions)
     return false;
 
   // FIXME: As usual, we could be more specific in our error messages, but