1 // Copyright (c) Microsoft. All rights reserved.
2 // Licensed under the MIT license. See LICENSE file in the project root for
3 // full license information.
4 
5 #include <windows.h>
6 #include "seh.h"
7 
8 char test[] = "SEH0043.c";
9 
10 int main() {
11   ULONG Index1;
12   LONG Counter;
13 
14   Counter = 0;
15 
16   for (Index1 = 0; Index1 < 10; Index1 += 1) {
17     try {
18       try {
19         if ((Index1 & 0x1) == 1) {
20           /* never gets here, "break"'s on Index1=0 */
21           Counter += 1;
22         }
23       }
24       finally {
25         /* set counter to 2 */
26         Counter += 2;
27       }
28       endtry
29       /* set counter = 6 */
30       Counter += 4;
31     }
32     finally {
33       /* set counter = 11 */
34       Counter += 5;
35       /* end loop */
36 #if defined(_MSC_VER) && !defined(__clang__)
37       break;
38 #endif
39     }
40     endtry
41 #ifndef _MSC_VER
42     break;
43 #endif
44     /* never gets here due to "break" */
45     Counter += 6;
46   }
47 
48   if (Counter != 11) {
49     printf("TEST 43 FAILED. Counter = %d\n\r", Counter);
50     return -1;
51   }
52 
53   return 0;
54 }
55