p9-noexcept.cpp revision f86d5f2b888573f7d72d7eeae7237cf6c5080958
1// RUN: %clang_cc1 %s -std=c++0x -triple=x86_64-apple-darwin10 -emit-llvm -o - -fcxx-exceptions -fexceptions | FileCheck %s
2
3void external();
4
5void target() noexcept
6{
7  // CHECK: invoke void @_Z8externalv()
8  external();
9}
10// CHECK: terminate.lpad:
11// CHECK:  %eh.selector = call i32 (i8*, i8*, ...)* @llvm.eh.selector(i8* %exn, i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*), i8* null) nounwind
12// CHECK-NEXT: call void @_ZSt9terminatev() noreturn nounwind
13// CHECK-NEXT: unreachable
14
15void reverse() noexcept(false)
16{
17  // CHECK: call void @_Z8externalv()
18  external();
19}
20