31
31
*/
32
32
33
33
struct jmpenv {
34
- struct jmpenv * je_prev ;
35
- Sigjmp_buf je_buf ; /* uninit if je_prev is NULL */
36
- int je_ret ; /* last exception thrown */
37
- bool je_mustcatch ; /* longjmp()s must be caught locally */
38
- U16 je_old_delaymagic ; /* saved PL_delaymagic */
39
- SSize_t je_old_stack_hwm ;
34
+ struct jmpenv * je_prev ;
35
+ Sigjmp_buf je_buf ; /* uninit if je_prev is NULL */
36
+ int je_ret ; /* last exception thrown */
37
+ bool je_mustcatch ; /* longjmp()s must be caught locally */
38
+ U16 je_old_delaymagic ; /* saved PL_delaymagic */
39
+ SSize_t je_old_stack_hwm ;
40
40
};
41
41
42
42
typedef struct jmpenv JMPENV ;
@@ -427,29 +427,29 @@ struct cop {
427
427
BASEOP
428
428
/* On LP64 putting this here takes advantage of the fact that BASEOP isn't
429
429
an exact multiple of 8 bytes to save structure padding. */
430
- line_t cop_line ; /* line # of this command */
430
+ line_t cop_line ; /* line # of this command */
431
431
/* label for this construct is now stored in cop_hints_hash */
432
432
#ifdef USE_ITHREADS
433
- PADOFFSET cop_stashoff ; /* offset into PL_stashpad, for the package
434
- the line was compiled in */
435
- char * cop_file ; /* rcpv containing name of file
436
- this command is from */
433
+ PADOFFSET cop_stashoff ; /* offset into PL_stashpad, for the package
434
+ the line was compiled in */
435
+ char * cop_file ; /* rcpv containing name of file
436
+ this command is from */
437
437
#else
438
- HV * cop_stash ; /* package line was compiled in */
439
- GV * cop_filegv ; /* name of GV file this command is from */
438
+ HV * cop_stash ; /* package line was compiled in */
439
+ GV * cop_filegv ; /* name of GV file this command is from */
440
440
#endif
441
- U32 cop_hints ; /* hints bits from pragmata */
442
- U32 cop_seq ; /* parse sequence number */
443
- char * cop_warnings ; /* Lexical warnings bitmask vector. Refcounted
444
- shared copy of ${^WARNING_BITS}. This
445
- pointer either points at one of the magic
446
- values for warnings, or it points at a
447
- buffer constructed with rcpv_new(). Use the
448
- RCPV_LEN() macro to get its length.
449
- */
441
+ U32 cop_hints ; /* hints bits from pragmata */
442
+ U32 cop_seq ; /* parse sequence number */
443
+ char * cop_warnings ; /* Lexical warnings bitmask vector. Refcounted
444
+ shared copy of ${^WARNING_BITS}. This
445
+ pointer either points at one of the magic
446
+ values for warnings, or it points at a
447
+ buffer constructed with rcpv_new(). Use the
448
+ RCPV_LEN() macro to get its length.
449
+ */
450
450
/* compile time state of %^H. See the comment in op.c for how
451
451
this is used to recreate a hash to return from caller. */
452
- COPHH * cop_hints_hash ;
452
+ COPHH * cop_hints_hash ;
453
453
/* for now just a bitmask stored here. If we get sufficient features
454
454
this may become a pointer. How these flags are stored is subject
455
455
to change without notice. Use the macros to test for features.
@@ -533,8 +533,8 @@ Returns the length of a pv created with C<rcpv_new()>.
533
533
*/
534
534
535
535
struct rcpv {
536
- STRLEN refcount ; /* UV would mean a 64 refcnt on 32 bit
537
- builds with -Duse64bitint */
536
+ STRLEN refcount ; /* UV would mean a 64 refcnt on 32 bit
537
+ builds with -Duse64bitint */
538
538
STRLEN len ;
539
539
char pv [1 ];
540
540
};
@@ -792,27 +792,27 @@ returned label, by setting C<*flags> to 0 or C<SVf_UTF8>.
792
792
793
793
/* subroutine context */
794
794
struct block_sub {
795
- OP * retop ; /* op to execute on exit from sub */
796
- I32 old_cxsubix ; /* previous value of si_cxsubix */
795
+ OP * retop ; /* op to execute on exit from sub */
796
+ I32 old_cxsubix ; /* previous value of si_cxsubix */
797
797
/* Above here is the same for sub, format and eval. */
798
- PAD * prevcomppad ; /* the caller's PL_comppad */
799
- CV * cv ;
798
+ PAD * prevcomppad ; /* the caller's PL_comppad */
799
+ CV * cv ;
800
800
/* Above here is the same for sub and format. */
801
- I32 olddepth ;
802
- AV * savearray ;
801
+ I32 olddepth ;
802
+ AV * savearray ;
803
803
};
804
804
805
805
806
806
/* format context */
807
807
struct block_format {
808
- OP * retop ; /* op to execute on exit from sub */
809
- I32 old_cxsubix ; /* previous value of si_cxsubix */
808
+ OP * retop ; /* op to execute on exit from sub */
809
+ I32 old_cxsubix ; /* previous value of si_cxsubix */
810
810
/* Above here is the same for sub, format and eval. */
811
- PAD * prevcomppad ; /* the caller's PL_comppad */
812
- CV * cv ;
811
+ PAD * prevcomppad ; /* the caller's PL_comppad */
812
+ CV * cv ;
813
813
/* Above here is the same for sub and format. */
814
- GV * gv ;
815
- GV * dfoutgv ;
814
+ GV * gv ;
815
+ GV * dfoutgv ;
816
816
};
817
817
818
818
/* return a pointer to the current context */
@@ -866,14 +866,14 @@ struct block_format {
866
866
867
867
/* eval context */
868
868
struct block_eval {
869
- OP * retop ; /* op to execute on exit from eval */
870
- I32 old_cxsubix ; /* previous value of si_cxsubix */
869
+ OP * retop ; /* op to execute on exit from eval */
870
+ I32 old_cxsubix ; /* previous value of si_cxsubix */
871
871
/* Above here is the same for sub, format and eval. */
872
- SV * old_namesv ;
873
- OP * old_eval_root ;
874
- SV * cur_text ;
875
- CV * cv ;
876
- JMPENV * cur_top_env ; /* value of PL_top_env when eval CX created */
872
+ SV * old_namesv ;
873
+ OP * old_eval_root ;
874
+ SV * cur_text ;
875
+ CV * cv ;
876
+ JMPENV * cur_top_env ; /* value of PL_top_env when eval CX created */
877
877
};
878
878
879
879
/* If we ever need more than 512 op types, change the shift from 7. blku_gimme
@@ -888,32 +888,32 @@ struct block_eval {
888
888
889
889
/* loop context */
890
890
struct block_loop {
891
- LOOP * my_op ; /* My op, that contains redo, next and last ops. */
892
- union { /* different ways of locating the iteration variable */
893
- SV * * svp ; /* for lexicals: address of pad slot */
894
- GV * gv ; /* for package vars */
895
- } itervar_u ;
896
- SV * itersave ; /* the original iteration var */
891
+ LOOP * my_op ; /* My op, that contains redo, next and last ops. */
892
+ union { /* different ways of locating the iteration variable */
893
+ SV * * svp ; /* for lexicals: address of pad slot */
894
+ GV * gv ; /* for package vars */
895
+ } itervar_u ;
896
+ SV * itersave ; /* the original iteration var */
897
897
union {
898
898
struct { /* CXt_LOOP_ARY, C<for (@ary)> */
899
- AV * ary ; /* array being iterated over */
900
- IV ix ; /* index relative to base of array */
901
- } ary ;
899
+ AV * ary ; /* array being iterated over */
900
+ IV ix ; /* index relative to base of array */
901
+ } ary ;
902
902
struct { /* CXt_LOOP_LIST, C<for (list)> */
903
903
I32 basesp ; /* first element of list on stack */
904
- IV ix ; /* index relative to basesp */
905
- } stack ;
904
+ IV ix ; /* index relative to basesp */
905
+ } stack ;
906
906
struct { /* CXt_LOOP_LAZYIV, C<for (1..9)> */
907
- IV cur ;
908
- IV end ;
909
- } lazyiv ;
907
+ IV cur ;
908
+ IV end ;
909
+ } lazyiv ;
910
910
struct { /* CXt_LOOP_LAZYSV C<for ('a'..'z')> */
911
- SV * cur ;
912
- SV * end ; /* maxiumum value (or minimum in reverse) */
913
- } lazysv ;
914
- } state_u ;
911
+ SV * cur ;
912
+ SV * end ; /* maxiumum value (or minimum in reverse) */
913
+ } lazysv ;
914
+ } state_u ;
915
915
#ifdef USE_ITHREADS
916
- PAD * oldcomppad ; /* needed to map itervar_u.svp during thread clone */
916
+ PAD * oldcomppad ; /* needed to map itervar_u.svp during thread clone */
917
917
#endif
918
918
};
919
919
@@ -947,33 +947,33 @@ struct block_loop {
947
947
948
948
/* given/when context */
949
949
struct block_givwhen {
950
- OP * leave_op ;
951
- SV * defsv_save ; /* the original $_ */
950
+ OP * leave_op ;
951
+ SV * defsv_save ; /* the original $_ */
952
952
};
953
953
954
954
955
955
956
956
/* context common to subroutines, evals and loops */
957
957
struct block {
958
- U8 blku_type ; /* what kind of context this is */
959
- U8 blku_gimme ; /* is this block running in list context? */
960
- U16 blku_u16 ; /* used by block_sub and block_eval (so far) */
961
- I32 blku_oldsaveix ; /* saved PL_savestack_ix */
958
+ U8 blku_type ; /* what kind of context this is */
959
+ U8 blku_gimme ; /* is this block running in list context? */
960
+ U16 blku_u16 ; /* used by block_sub and block_eval (so far) */
961
+ I32 blku_oldsaveix ; /* saved PL_savestack_ix */
962
962
/* all the fields above must be aligned with same-sized fields as sbu */
963
- I32 blku_oldsp ; /* current sp floor: where nextstate pops to */
964
- I32 blku_oldmarksp ; /* mark stack index */
965
- COP * blku_oldcop ; /* old curcop pointer */
966
- PMOP * blku_oldpm ; /* values of pattern match vars */
967
- SSize_t blku_old_tmpsfloor ; /* saved PL_tmps_floor */
968
- I32 blku_oldscopesp ; /* scope stack index */
963
+ I32 blku_oldsp ; /* current sp floor: where nextstate pops to */
964
+ I32 blku_oldmarksp ; /* mark stack index */
965
+ COP * blku_oldcop ; /* old curcop pointer */
966
+ PMOP * blku_oldpm ; /* values of pattern match vars */
967
+ SSize_t blku_old_tmpsfloor ; /* saved PL_tmps_floor */
968
+ I32 blku_oldscopesp ; /* scope stack index */
969
969
970
970
union {
971
971
struct block_sub blku_sub ;
972
972
struct block_format blku_format ;
973
973
struct block_eval blku_eval ;
974
974
struct block_loop blku_loop ;
975
975
struct block_givwhen blku_givwhen ;
976
- } blk_u ;
976
+ } blk_u ;
977
977
};
978
978
#define blk_oldsp cx_u.cx_blk.blku_oldsp
979
979
#define blk_oldcop cx_u.cx_blk.blku_oldcop
@@ -1006,21 +1006,21 @@ struct block {
1006
1006
1007
1007
/* substitution context */
1008
1008
struct subst {
1009
- U8 sbu_type ; /* same as blku_type */
1010
- U8 sbu_rflags ;
1011
- U16 sbu_rxtainted ;
1012
- I32 sbu_oldsaveix ; /* same as blku_oldsaveix */
1009
+ U8 sbu_type ; /* same as blku_type */
1010
+ U8 sbu_rflags ;
1011
+ U16 sbu_rxtainted ;
1012
+ I32 sbu_oldsaveix ; /* same as blku_oldsaveix */
1013
1013
/* all the fields above must be aligned with same-sized fields as blk_u */
1014
- SSize_t sbu_iters ;
1015
- SSize_t sbu_maxiters ;
1016
- char * sbu_orig ;
1017
- SV * sbu_dstr ;
1018
- SV * sbu_targ ;
1019
- char * sbu_s ;
1020
- char * sbu_m ;
1021
- char * sbu_strend ;
1022
- void * sbu_rxres ;
1023
- REGEXP * sbu_rx ;
1014
+ SSize_t sbu_iters ;
1015
+ SSize_t sbu_maxiters ;
1016
+ char * sbu_orig ;
1017
+ SV * sbu_dstr ;
1018
+ SV * sbu_targ ;
1019
+ char * sbu_s ;
1020
+ char * sbu_m ;
1021
+ char * sbu_strend ;
1022
+ void * sbu_rxres ;
1023
+ REGEXP * sbu_rx ;
1024
1024
};
1025
1025
1026
1026
#ifdef PERL_CORE
@@ -1076,7 +1076,7 @@ struct context {
1076
1076
union {
1077
1077
struct block cx_blk ;
1078
1078
struct subst cx_subst ;
1079
- } cx_u ;
1079
+ } cx_u ;
1080
1080
};
1081
1081
#define cx_type cx_u.cx_subst.sbu_type
1082
1082
@@ -1216,10 +1216,10 @@ struct context {
1216
1216
#define PERLSI_REGCOMP 11
1217
1217
1218
1218
struct stackinfo {
1219
- AV * si_stack ; /* stack for current runlevel */
1220
- PERL_CONTEXT * si_cxstack ; /* context stack for runlevel */
1221
- struct stackinfo * si_prev ;
1222
- struct stackinfo * si_next ;
1219
+ AV * si_stack ; /* stack for current runlevel */
1220
+ PERL_CONTEXT * si_cxstack ; /* context stack for runlevel */
1221
+ struct stackinfo * si_prev ;
1222
+ struct stackinfo * si_next ;
1223
1223
I32 si_cxix ; /* current context index */
1224
1224
I32 si_cxmax ; /* maximum allocated index */
1225
1225
I32 si_cxsubix ; /* topmost sub/eval/format */
@@ -1229,7 +1229,7 @@ struct stackinfo {
1229
1229
* with DEBUGGING, but not
1230
1230
* #ifdef-ed for bincompat */
1231
1231
#if defined DEBUGGING && !defined DEBUGGING_RE_ONLY
1232
- /* high water mark: for checking if the stack was correctly
1232
+ /* high water mark: for checking if the stack was correctly
1233
1233
* extended / tested for extension by each pp function */
1234
1234
SSize_t si_stack_hwm ;
1235
1235
#endif
0 commit comments