1// RUN: %clang_cc1 -x objective-c -fobjc-exceptions -fexceptions -E -dM %s | FileCheck -check-prefix=CHECK-OBJC-NOCXX %s
2// CHECK-OBJC-NOCXX: #define OBJC_ZEROCOST_EXCEPTIONS 1
3// CHECK-OBJC-NOCXX: #define __EXCEPTIONS 1
4
5// RUN: %clang_cc1 -x objective-c++ -fobjc-exceptions -fexceptions -fcxx-exceptions -E -dM %s | FileCheck -check-prefix=CHECK-OBJC-CXX %s
6// CHECK-OBJC-CXX: #define OBJC_ZEROCOST_EXCEPTIONS 1
7// CHECK-OBJC-CXX: #define __EXCEPTIONS 1
8
9// RUN: %clang_cc1 -x objective-c++ -fexceptions -fcxx-exceptions -E -dM %s | FileCheck -check-prefix=CHECK-NOOBJC-CXX %s
10// CHECK-NOOBJC-CXX-NOT: #define OBJC_ZEROCOST_EXCEPTIONS 1
11// CHECK-NOOBJC-CXX: #define __EXCEPTIONS 1
12
13// RUN: %clang_cc1 -x objective-c -E -dM %s | FileCheck -check-prefix=CHECK-NOOBJC-NOCXX %s
14// CHECK-NOOBJC-NOCXX-NOT: #define OBJC_ZEROCOST_EXCEPTIONS 1
15// CHECK-NOOBJC-NOCXX-NOT: #define __EXCEPTIONS 1
16