ReactOS 0.4.16-dev-306-g647d351
seh0046.c
Go to the documentation of this file.
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
8char test[] = "SEH0046.c";
9
10int main() {
11 ULONG Index1;
12 ULONG Index2 = 1;
14
15 Counter = 0;
16 Index1 = 1;
17
18 switch (Index2) {
19 case 0:
20 Counter += 100;
21 break;
22 case 1:
23 try {
24 try {
25 if ((Index1 & 0x1) == 1) {
26 /* break out of switchy stmt. */
27 break;
28 } else {
29 Counter += 1;
30 }
31 }
32 except(1) {
33 /* no exception occurs, never gets here */
34 Counter += 10;
35 }
36 endtry
37 /* "break" keeps you from getting here */
38 Counter += 2;
39 }
40 except(1) {
41 /* no exception occurs, never gets here */
42 Counter += 20;
43 }
44 endtry
45 /* "break" keeps you from getting here */
46 Counter += 3;
47 }
48
49 if (Counter != 0) {
50 printf("TEST 46 FAILED. Counter = %d\n\r", Counter);
51 return -1;
52 }
53
54 return 0;
55}
#define except(x)
Definition: btrfs_drv.h:136
#define printf
Definition: freeldr.h:97
long LONG
Definition: pedump.c:60
char test[]
Definition: seh0046.c:8
int main()
Definition: seh0046.c:10
#define endtry
Definition: seh.h:24
static LARGE_INTEGER Counter
Definition: clock.c:43
uint32_t ULONG
Definition: typedefs.h:59