4.4BSD/usr/share/man/cat3/longjmperr.0

Compare this file to the similar file:
Show the results in this format:

SETJMP(3)                   BSD Programmer's Manual                  SETJMP(3)

NNAAMMEE
     ssiiggsseettjjmmpp, ssiigglloonnggjjmmpp, sseettjjmmpp, lloonnggjjmmpp, __sseettjjmmpp, __lloonnggjjmmpp lloonnggjjmmppeerrrroorr -
     non-local jumps

SSYYNNOOPPSSIISS
     ##iinncclluuddee <<sseettjjmmpp..hh>>

     _i_n_t
     ssiiggsseettjjmmpp(_s_i_g_j_m_p___b_u_f _e_n_v, _i_n_t _s_a_v_e_m_a_s_k);

     _v_o_i_d
     ssiigglloonnggjjmmpp(_s_i_g_j_m_p___b_u_f _e_n_v, _i_n_t _v_a_l);

     _i_n_t
     sseettjjmmpp(_j_m_p___b_u_f _e_n_v);

     _v_o_i_d
     lloonnggjjmmpp(_j_m_p___b_u_f _e_n_v, _i_n_t _v_a_l);

     _i_n_t
     __sseettjjmmpp(_j_m_p___b_u_f _e_n_v);

     _v_o_i_d
     __lloonnggjjmmpp(_j_m_p___b_u_f _e_n_v, _i_n_t _v_a_l);

     _v_o_i_d
     lloonnggjjmmppeerrrroorr(_v_o_i_d);

DDEESSCCRRIIPPTTIIOONN
     The ssiiggsseettjjmmpp(), sseettjjmmpp(), and __sseettjjmmpp() functions save their calling en-
     vironment in _e_n_v. Each of these functions returns 0.

     The corresponding lloonnggjjmmpp() functions restore the environment saved by
     their most recent respective invocations of the sseettjjmmpp() function.  They
     then return so that program execution continues as if the corresponding
     invocation of the sseettjjmmpp() call had just returned  the value specified by
     _v_a_l, instead of 0.

     Pairs of calls may be intermixed, i.e. both ssiiggsseettjjmmpp() and ssiigglloonnggjjmmpp()
     and sseettjjmmpp() and lloonnggjjmmpp() combinations may be used in the same program,
     however, individual calls may not, e.g. the _e_n_v argument to sseettjjmmpp() may
     not be passed to ssiigglloonnggjjmmpp().

     The lloonnggjjmmpp() routines may not be called after the routine which called
     the sseettjjmmpp() routines returns.

     All accessible objects have values as of the time lloonnggjjmmpp() routine was
     called, except that the values of objects of automatic storage invocation
     duration that do not have the _v_o_l_a_t_i_l_e type and have been changed between
     the sseettjjmmpp() invocation and lloonnggjjmmpp() call are indeterminate.

     The sseettjjmmpp()/lloonnggjjmmpp() pairs save and restore the signal mask while
     __sseettjjmmpp()/__lloonnggjjmmpp() pairs save and restore only the register set and the
     stack.  (See ssiiggmmaasskk(_2).)

     The ssiiggsseettjjmmpp()/ssiigglloonnggjjmmpp() function pairs save and restore the signal
     mask if the argument _s_a_v_e_m_a_s_k is non-zero, otherwise only the register
     set and the stack are saved.

EERRRROORRSS
     If the contents of the _e_n_v are corrupted, or correspond to an environment
     that has already returned, the lloonnggjjmmpp() routine calls the routine
     lloonnggjjmmppeerrrroorr(_3).  If lloonnggjjmmppeerrrroorr() returns the program is aborted (see
     abort(2)).  The default version of lloonnggjjmmppeerrrroorr() prints the message
     ``longjmp botch'' to standard error and returns.  User programs wishing
     to exit more gracefully should write their own versions of
     lloonnggjjmmppeerrrroorr().

SSEEEE AALLSSOO
     sigaction(2),  sigaltstack(2),  signal(3)

SSTTAANNDDAARRDDSS
     The sseettjjmmpp() and lloonnggjjmmpp() functions conform to ANSI C X3.159-1989
     (``ANSI C ''). The ssiiggsseettjjmmpp() and ssiigglloonnggjjmmpp() functions conform to IEEE
     Std1003.1-1988 (``POSIX'').

4th Berkeley Distribution        June 4, 1993                                2