p9-noexcept.cpp revision a968e97947b1281c3bb3c4d47a952b3801d9bb02
11b86fe063badb5f28c467ade39be0f4008688947Andreas Huber// RUN: %clang_cc1 %s -std=c++0x -triple=x86_64-apple-darwin10 -emit-llvm -o - -fcxx-exceptions -fexceptions | FileCheck %s 21b86fe063badb5f28c467ade39be0f4008688947Andreas Huber 31b86fe063badb5f28c467ade39be0f4008688947Andreas Hubervoid external(); 41b86fe063badb5f28c467ade39be0f4008688947Andreas Huber 51b86fe063badb5f28c467ade39be0f4008688947Andreas Hubervoid target() noexcept 61b86fe063badb5f28c467ade39be0f4008688947Andreas Huber{ 71b86fe063badb5f28c467ade39be0f4008688947Andreas Huber // CHECK: invoke void @_Z8externalv() 81b86fe063badb5f28c467ade39be0f4008688947Andreas Huber external(); 91b86fe063badb5f28c467ade39be0f4008688947Andreas Huber} 101b86fe063badb5f28c467ade39be0f4008688947Andreas Huber// CHECK: call i32 (i8*, i8*, ...)* @llvm.eh.selector({{.*}} i8* null) nounwind 111b86fe063badb5f28c467ade39be0f4008688947Andreas Huber// CHECK-NEXT: call void @_ZSt9terminatev() noreturn nounwind 121b86fe063badb5f28c467ade39be0f4008688947Andreas Huber// CHECK-NEXT: unreachable 131b86fe063badb5f28c467ade39be0f4008688947Andreas Huber 141b86fe063badb5f28c467ade39be0f4008688947Andreas Hubervoid reverse() noexcept(false) 151b86fe063badb5f28c467ade39be0f4008688947Andreas Huber{ 161b86fe063badb5f28c467ade39be0f4008688947Andreas Huber // CHECK: call void @_Z8externalv() 171b86fe063badb5f28c467ade39be0f4008688947Andreas Huber external(); 181b86fe063badb5f28c467ade39be0f4008688947Andreas Huber} 191b86fe063badb5f28c467ade39be0f4008688947Andreas Huber