1// RUN: %clang_cc1 -fsyntax-only -verify %s 2 3// Various tests for -fno-exceptions 4 5typedef __SIZE_TYPE__ size_t; 6 7namespace test0 { 8 // rdar://problem/7878149 9 class Foo { 10 public: 11 void* operator new(size_t x); 12 private: 13 void operator delete(void *x); 14 }; 15 16 void test() { 17 // Under -fexceptions, this does access control for the associated 18 // 'operator delete'. 19 (void) new Foo(); 20 } 21} 22 23namespace test1 { 24void f() { 25 throw; // expected-error {{cannot use 'throw' with exceptions disabled}} 26} 27 28void g() { 29 try { // expected-error {{cannot use 'try' with exceptions disabled}} 30 f(); 31 } catch (...) { 32 } 33} 34 35} 36