Commit in reactos on MAIN
include/pseh/framebased.h+1-11.4 -> 1.5
lib/pseh/framebased.c+41.2 -> 1.3
lib/pseh/i386/framebased.asm+3-21.3 -> 1.4
             /setjmp.asm+21.1 -> 1.2
+10-3
4 modified files
Fixes for Borland C++ compilation, and one variable is now qualified "volatile" to disable dangerous optimizations

reactos/include/pseh
framebased.h 1.4 -> 1.5
diff -u -r1.4 -r1.5
--- framebased.h	3 Jun 2004 04:14:07 -0000	1.4
+++ framebased.h	3 Jun 2004 22:19:09 -0000	1.5
@@ -99,7 +99,7 @@
   };                                                                           \
                                                                                \
   _SEHFrame_t _SEHFrame;                                                       \
-  _SEHPortableFrame_t * _SEHPortableFrame;                                     \
+  volatile _SEHPortableFrame_t * _SEHPortableFrame;                            \
                                                                                \
   _SEHFrame.SEH_Header.SPF_Handlers = &_SEHHandlers;                           \
                                                                                \

reactos/lib/pseh
framebased.c 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- framebased.c	2 Jun 2004 19:22:06 -0000	1.2
+++ framebased.c	3 Jun 2004 22:19:09 -0000	1.3
@@ -33,6 +33,10 @@
 extern void __cdecl _SEHUnregisterFrame(const _SEHRegistration_t *);
 extern void __cdecl _SEHUnwind(_SEHPortableFrame_t *);
 
+/* Borland C++ uses a different decoration (i.e. none) for stdcall functions */
+extern void __stdcall RtlUnwind(void *, void *, void *, void *);
+void const * _SEHRtlUnwind = RtlUnwind;
+
 __declspec(noreturn) void __cdecl _SEHCallHandler(_SEHPortableFrame_t * frame)
 {
  frame->SPF_Handling = 1;

reactos/lib/pseh/i386
framebased.asm 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- framebased.asm	3 Jun 2004 04:14:07 -0000	1.3
+++ framebased.asm	3 Jun 2004 22:19:10 -0000	1.4
@@ -44,7 +44,7 @@
 global __SEHUnwind
 __SEHUnwind:
 
- extern _RtlUnwind@16
+ extern __SEHRtlUnwind
 
  mov ecx, [esp+4]
 
@@ -53,11 +53,12 @@
  push edi
  push ebx
 
+ xor eax, eax
  push eax
  push eax
  push eax
  push ecx
- call _RtlUnwind@16
+ call [__SEHRtlUnwind]
 
  pop ebx
  pop edi

reactos/lib/pseh/i386
setjmp.asm 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- setjmp.asm	3 Jun 2004 02:23:34 -0000	1.1
+++ setjmp.asm	3 Jun 2004 22:19:10 -0000	1.2
@@ -21,6 +21,8 @@
 cpu 486
 segment .text use32
 
+; Note: the undecorated names are for Borland C++ (and possibly other compilers
+; using the OMF format)
 global SEHSetJmp
 global __SEHSetJmp
 SEHSetJmp:
CVSspam 0.2.8