perl 5.0 alpha 6
[p5sagit/p5-mst-13.2.git] / scope.h
1 #define SAVEt_ITEM      0
2 #define SAVEt_SV        1
3 #define SAVEt_AV        2
4 #define SAVEt_HV        3
5 #define SAVEt_INT       4
6 #define SAVEt_I32       5
7 #define SAVEt_SPTR      6
8 #define SAVEt_HPTR      7
9 #define SAVEt_APTR      8
10 #define SAVEt_NSTAB     9
11 #define SAVEt_SVREF     10
12 #define SAVEt_GP        11
13 #define SAVEt_FREESV    12
14 #define SAVEt_FREEOP    13
15 #define SAVEt_FREEPV    14
16 #define SAVEt_CLEARSV   15
17 #define SAVEt_DELETE    16
18
19 #define SSCHECK(need) if (savestack_ix + need > savestack_max) savestack_grow()
20 #define SSPUSHINT(i) (savestack[savestack_ix++].any_i32 = (I32)(i))
21 #define SSPUSHPTR(p) (savestack[savestack_ix++].any_ptr = (void*)(p))
22 #define SSPOPINT (savestack[--savestack_ix].any_i32)
23 #define SSPOPPTR (savestack[--savestack_ix].any_ptr)
24
25 #define FREE_TMPS() if (tmps_ix > tmps_floor) free_tmps()
26 #define LEAVE_SCOPE(old) if (savestack_ix > old) leave_scope(old)