1// RUN: %clang_cc1 -emit-llvm %s -o -
2
3
4void doesntThrow() throw();
5struct F {
6  ~F() { doesntThrow(); }
7};
8
9void atest() {
10  F A;
11lab:
12  F B;
13  goto lab;
14}
15
16void test(int val) {
17label: {
18   F A;
19   F B;
20   if (val == 0) goto label;
21   if (val == 1) goto label;
22}
23}
24
25void test3(int val) {
26label: {
27   F A;
28   F B;
29   if (val == 0) { doesntThrow(); goto label; }
30   if (val == 1) { doesntThrow(); goto label; }
31}
32}
33
34void test4(int val) {
35label: {
36   F A;
37   F B;
38   if (val == 0) { F C; goto label; }
39   if (val == 1) { F D; goto label; }
40}
41}
42