seh_try_macros-07.diff

Greg Turner gmturner007 at ameritech.net
Wed Jan 15 00:49:30 CST 2003


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 at 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




More information about the wine-patches mailing list