ReactOS 0.4.16-dev-338-g34e76ad
seh0056.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[] = "SEH0056.c";
9
10int main() {
12
13 Counter = 0;
14
15 try {
16 Counter += 1;
17 RaiseException(EXCEPTION_INT_OVERFLOW, 0, /* no flags */
18 0, NULL);
19 }
21 try {
22 Counter += 3;
23 }
24 finally {
25 if (abnormal_termination() == FALSE) {
26 Counter += 5;
27 }
28 }
29 endtry
30 }
31 endtry
32
33 if (Counter != 9) {
34 printf("TEST 56 FAILED. Counter = %d\n\r", Counter);
35 return -1;
36 }
37
38 return 0;
39}
#define except(x)
Definition: btrfs_drv.h:136
#define NULL
Definition: types.h:112
#define FALSE
Definition: types.h:117
VOID WINAPI RaiseException(_In_ DWORD dwExceptionCode, _In_ DWORD dwExceptionFlags, _In_ DWORD nNumberOfArguments, _In_opt_ const ULONG_PTR *lpArguments)
Definition: except.c:700
#define printf
Definition: freeldr.h:97
long LONG
Definition: pedump.c:60
char test[]
Definition: seh0056.c:8
int main()
Definition: seh0056.c:10
#define endtry
Definition: seh.h:24
#define abnormal_termination
Definition: seh.h:25
static LARGE_INTEGER Counter
Definition: clock.c:43
#define EXCEPTION_INT_OVERFLOW
Definition: winbase.h:350