home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1997 May / Pcwk0597.iso / sybase / starbuck / h.z / SETJMP.H < prev    next >
C/C++ Source or Header  |  1996-07-24  |  927b  |  46 lines

  1. /*
  2.  *  setjmp.h
  3.  *
  4.  *  Copyright by WATCOM International Corp. 1988-1996.  All rights reserved.
  5.  */
  6. #ifndef _SETJMP_H_INCLUDED
  7. #define _SETJMP_H_INCLUDED
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11.  
  12. #ifndef _COMDEF_H_INCLUDED
  13.  #include <_comdef.h>
  14. #endif
  15.  
  16. #if defined(__PPC__)
  17.  typedef unsigned int jmp_buf[1];
  18. #elif defined(__AXP__)
  19.  typedef double jmp_buf[24];
  20. #else
  21.  typedef unsigned int jmp_buf[13];
  22. #endif
  23.  
  24. _WCRTLINK extern int  _setjmp( jmp_buf __env );
  25. _WCRTLINK extern void longjmp( jmp_buf __env, int __val );
  26.  
  27. #if !defined(_SETJMPEX_H_INCLUDED_)
  28.  #define setjmp(__env)  _setjmp(__env)
  29. #endif
  30.  
  31. #if defined(__PPC__)
  32. #elif defined(__AXP__)
  33. #elif defined(__386__)
  34.  #pragma aux _setjmp __parm __caller [__eax] __modify [__8087];
  35.  #pragma aux longjmp __aborts;
  36. #else
  37.  #pragma aux _setjmp __modify [__8087];
  38.  #pragma aux longjmp __aborts;
  39. #endif
  40.  
  41.  
  42. #ifdef __cplusplus
  43. };
  44. #endif
  45. #endif
  46.