| // Make SEH works in PCH |
| // |
| // Test this without pch. |
| // RUN: %clang_cc1 -fms-extensions -triple x86_64-windows-msvc -std=c++11 -include %s -emit-llvm -o - %s | FileCheck %s |
| |
| // Test with pch. |
| // RUN: %clang_cc1 -fms-extensions -triple x86_64-windows-msvc -std=c++11 -emit-pch -o %t %s |
| // RUN: %clang_cc1 -fms-extensions -triple x86_64-windows-msvc -std=c++11 -include-pch %t -emit-llvm -o - %s | FileCheck %s |
| |
| #ifndef HEADER |
| #define HEADER |
| |
| int shouldCatch(); |
| inline int f() { |
| __try { |
| } __except (shouldCatch()) { |
| } |
| return 0; |
| } |
| int x = f(); |
| |
| // CHECK: define linkonce_odr dso_local i32 @"?f@@YAHXZ"() |
| // CHECK: define internal i32 @"?filt$0@0@f@@"({{.*}}) |
| |
| #else |
| |
| // empty |
| |
| #endif |