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 "stdio.h" 6 7 #if ( _MSC_VER >= 800 ) 8 9 #define try __try 10 #define except __except 11 #define finally __finally 12 #define leave __leave 13 #define endtry 14 #define gcc_volatile 15 16 #else 17 18 #include <pseh/pseh2.h> 19 20 #define try _SEH2_TRY 21 #define except _SEH2_EXCEPT 22 #define finally _SEH2_FINALLY 23 #define leave _SEH2_LEAVE 24 #define endtry _SEH2_END 25 #define abnormal_termination _abnormal_termination 26 #define GetExceptionInformation() _SEH2_GetExceptionInformation() 27 #define GetExceptionCode() _SEH2_GetExceptionCode() 28 #define AbnormalTermination() _SEH2_AbnormalTermination() 29 #define gcc_volatile volatile 30 31 #endif 32