Hopefully, the last in the series. Fixes the conflict, for all intents and purposes, I think, between wrc and files to be found only in /usr/include. LICENSE: X11/Bugroff CHANGELOG: * include: rpc.h; include/wine: exception.h: Greg Turner <gmturner007@ameritech.net> - don't go #including hairy headers if we are being preprocessed under wrc. - get rid of #ifdef __try, my previous, more confusing, and less effective attempt to solve the same problem. - rename the (unused) __NO_VC_SEH_MACROS__ emergency override to just NO_VC_SEH_MACROS, which seems more standards compliant. -- diff -ur -x CVS -x 'bigdif*' -x autom4te.cache ../wine.test/include/rpc.h ./include/rpc.h --- ../wine.test/include/rpc.h 2003-01-15 00:43:05.000000000 -0600 +++ ./include/rpc.h 2003-01-15 00:42:36.000000000 -0600 @@ -49,19 +49,27 @@ #include "excpt.h" #include "winerror.h" +#if (!(defined(__WRC__))) + #include "wine/exception.h" + #define RpcTryExcept __try { + #define RpcExcept(...) } __except(__VA_ARGS__) { + #define RpcEndExcept } + #define RpcTryFinally __try { + #define RpcFinally } __finally { + #define RpcEndFinally } + #define RpcExceptionCode(...) GetExceptionCode(__VA_ARGS__) + #define RpcAbnormalTermination(...) AbnormalTermination(__VA_ARGS__) +#else + #define RpcTryExcept if (1) { + #define RpcExcept } else { + #define RpcEndExcept } + #define RpcTryFinally + #define RpcFinally + #define RpcEndFinally + #define RpcExceptionCode() 0 + #define RpcAbnormalTermination() 0 +#endif /* (!(defined(__WRC__))) */ + #endif /*__WINE_RPC_H */ -#ifdef __try - #ifndef __WINE_RPC_H_RPCTRYMACROS - #define __WINE_RPC_H_RPCTRYMACROS - #define RpcTryExcept __try { - #define RpcExcept(...) } __except(__VA_ARGS__) { - #define RpcEndExcept } - #define RpcTryFinally __try { - #define RpcFinally } __finally { - #define RpcEndFinally } - #define RpcExceptionCode(...) GetExceptionCode(__VA_ARGS__) - #define RpcAbnormalTermination(...) AbnormalTermination(__VA_ARGS__) - #endif -#endif diff -ur -x CVS -x 'bigdif*' -x autom4te.cache ../wine.test/include/wine/exception.h ./include/wine/exception.h --- ../wine.test/include/wine/exception.h 2003-01-15 00:43:05.000000000 -0600 +++ ./include/wine/exception.h 2003-01-14 23:46:29.000000000 -0600 @@ -21,6 +21,9 @@ #ifndef __WINE_WINE_EXCEPTION_H #define __WINE_WINE_EXCEPTION_H +/* WRC can't find setjmp.h. Does it not check /usr/include? */ +#if (!(defined(__WRC__))) + #include <setjmp.h> #include "windef.h" @@ -173,7 +176,7 @@ extern int __wine_pop_seh_f_reraise(); extern void __wine_push_seh_f_reraise(int); -#ifndef __NO_VC_SEH_MACROS__ +#if (!defined(NO_VC_SEH_MACROS)) #include <assert.h> @@ -226,9 +229,11 @@ \ goto __leavelabel -#endif /* NO_VC_SEH_MACROS */ +#endif /* (!defined(NO_VC_SEH_MACROS)) */ + +#endif /* (!defined(USE_COMPILER_EXCEPTIONS)) */ -#endif /* USE_COMPILER_EXCEPTIONS */ +#endif /* (!defined(__WRC__)) */ static inline EXCEPTION_FRAME * WINE_UNUSED __wine_push_frame( EXCEPTION_FRAME *frame ) { -- gmt "If everyone is thinking alike then somebody isn't thinking." --George S. Patton