// RUN: %clang_cc1 -triple x86_64-windows-msvc -fexceptions -fcxx-exceptions %s -emit-llvm -o - | FileCheck %s --check-prefix=MSVC
// RUN: %clang_cc1 -triple x86_64-windows-msvc -fexceptions -fcxx-exceptions -fsjlj-exceptions %s -emit-llvm -o - | FileCheck %s --check-prefix=SJLJ
// RUN: %clang_cc1 -triple x86_64-windows-msvc -fexceptions -fcxx-exceptions -fseh-exceptions %s -emit-llvm -o - | FileCheck %s --check-prefix=MSVC
// RUN: %clang_cc1 -triple x86_64-windows-msvc -fexceptions -fcxx-exceptions -fdwarf-exceptions %s -emit-llvm -o - | FileCheck %s --check-prefix=DWARF

// MSVC: define void @f(){{.*}}@__CxxFrameHandler3
// SJLJ: define void @f(){{.*}}@__gxx_personality_sj0
// DWARF: define void @f(){{.*}}@__gxx_personality_v0

struct Cleanup {
  Cleanup();
  ~Cleanup();
  int x = 0;
};

void g();
extern "C" void f() {
  Cleanup c;
  g();
}
