bump product version to 5.0.4.1
[LibreOffice.git] / include / wntgccx / sehandler.hxx
blobe80a8283e429ccec5047a2838704b8ec48e4d271
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 /* From mingw-w64 excpt.h */
5 #ifndef INCLUDED_WNTGCCX_SEHANDLER_HXX
6 #define INCLUDED_WNTGCCX_SEHANDLER_HXX
8 #if !defined( __MINGW32__ ) || !defined ( _WIN64 )
9 #error This file should be included only in a 64-bit MinGW compilation
10 #endif
12 #ifdef __try
13 #undef __try
14 #endif
16 #if 0
17 #define __try \
18 __asm__ __volatile__ ("\t.l_startw:\n" \
20 #else
21 #define __try \
22 if (true)
23 #endif
25 #ifdef __except
26 #undef __except
27 #endif
29 #if 0
30 #define __except(exvalue) \
31 __asm__ __volatile__ ("\tnop\n" \
32 "\t.seh_handler __C_specific_handler, @except\n" \
33 "\t.seh_handlerdata\n" \
34 "\t.long 1\n" \
35 "\t.rva .l_startw, .l_endw, " __MINGW64_STRINGIFY(exvalue) " ,.l_endw\n" \
36 "\t.text\n" \
37 "\t.l_endw: nop\n" \
39 #else
40 #define __except(exvalue) \
41 if (false)
42 #endif
45 #endif // INCLUDED_WNTGCCX_SEHANDLER_HXX