summaryrefslogtreecommitdiffstats
path: root/src/runtime/testdata/testwinlibthrow/veh.c
blob: 08c1f9edf03ba9c915881cc17b9cc9c258017e96 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//go:build ignore

#include <windows.h>

__declspec(dllexport)
void RaiseNoExcept(void)
{
    RaiseException(42, 0, 0, 0);
}

static DWORD WINAPI ThreadRaiser(void* Context)
{
    RaiseNoExcept();
    return 0;
}

__declspec(dllexport)
void ThreadRaiseNoExcept(void)
{
    HANDLE thread = CreateThread(0, 0, ThreadRaiser,  0, 0, 0);
    if (0 != thread)
    {
        WaitForSingleObject(thread, INFINITE);
        CloseHandle(thread);
    }
}