Commit | Line | Data |
---|---|---|
d0e448f7 KT |
1 | .th RESET III 5/10/73 |
2 | .sh NAME | |
3 | reset \*- execute non-local goto | |
4 | .sh SYNOPSIS | |
5 | .ft B | |
6 | setexit( ) | |
7 | .s3 | |
8 | reset( ) | |
9 | .ft R | |
10 | .sh DESCRIPTION | |
11 | These routines are useful | |
12 | for dealing with errors | |
13 | discovered in a low-level subroutine | |
14 | of a program. | |
15 | .s3 | |
16 | .it Setexit | |
17 | is typically called just at the start of | |
18 | the main loop of a processing program. | |
19 | It stores certain parameters such as the call point and the stack | |
20 | level. | |
21 | .s3 | |
22 | .it Reset | |
23 | is typically called after diagnosing an error | |
24 | in some subprocedure called from the main loop. | |
25 | When | |
26 | .it reset | |
27 | is called, | |
28 | it pops the stack appropriately | |
29 | and generates a non-local return from | |
30 | the last call to | |
31 | .it setexit. | |
32 | .s3 | |
33 | It is erroneous, and generally | |
34 | disastrous, | |
35 | to call | |
36 | .it reset | |
37 | unless | |
38 | .it setexit | |
39 | has been called in a routine which is | |
40 | an ancestor of | |
41 | .it reset. | |
42 | .sh BUGS |