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.
@@ -536,10 +536,10 @@ is always injected at the end of the string by rcpv_new().
536
536
*/
537
537
538
538
struct rcpv {
539
- STRLEN refcount ; /* UV would mean a 64 refcnt on 32 bit
540
- builds with -Duse64bitint */
541
- STRLEN len ; /* length of string including mandatory
542
- null byte at end */
539
+ STRLEN refcount ; /* UV would mean a 64 refcnt on 32 bit
540
+ builds with -Duse64bitint */
541
+ STRLEN len ; /* length of string including mandatory
542
+ null byte at end */
543
543
char pv [1 ];
544
544
};
545
545
typedef struct rcpv RCPV ;
@@ -799,27 +799,27 @@ returned label, by setting C<*flags> to 0 or C<SVf_UTF8>.
799
799
800
800
/* subroutine context */
801
801
struct block_sub {
802
- OP * retop ; /* op to execute on exit from sub */
803
- I32 old_cxsubix ; /* previous value of si_cxsubix */
802
+ OP * retop ; /* op to execute on exit from sub */
803
+ I32 old_cxsubix ; /* previous value of si_cxsubix */
804
804
/* Above here is the same for sub, format and eval. */
805
- PAD * prevcomppad ; /* the caller's PL_comppad */
806
- CV * cv ;
805
+ PAD * prevcomppad ; /* the caller's PL_comppad */
806
+ CV * cv ;
807
807
/* Above here is the same for sub and format. */
808
- I32 olddepth ;
809
- AV * savearray ;
808
+ I32 olddepth ;
809
+ AV * savearray ;
810
810
};
811
811
812
812
813
813
/* format context */
814
814
struct block_format {
815
- OP * retop ; /* op to execute on exit from sub */
816
- I32 old_cxsubix ; /* previous value of si_cxsubix */
815
+ OP * retop ; /* op to execute on exit from sub */
816
+ I32 old_cxsubix ; /* previous value of si_cxsubix */
817
817
/* Above here is the same for sub, format and eval. */
818
- PAD * prevcomppad ; /* the caller's PL_comppad */
819
- CV * cv ;
818
+ PAD * prevcomppad ; /* the caller's PL_comppad */
819
+ CV * cv ;
820
820
/* Above here is the same for sub and format. */
821
- GV * gv ;
822
- GV * dfoutgv ;
821
+ GV * gv ;
822
+ GV * dfoutgv ;
823
823
};
824
824
825
825
/* return a pointer to the current context */
@@ -873,14 +873,14 @@ struct block_format {
873
873
874
874
/* eval context */
875
875
struct block_eval {
876
- OP * retop ; /* op to execute on exit from eval */
877
- I32 old_cxsubix ; /* previous value of si_cxsubix */
876
+ OP * retop ; /* op to execute on exit from eval */
877
+ I32 old_cxsubix ; /* previous value of si_cxsubix */
878
878
/* Above here is the same for sub, format and eval. */
879
- SV * old_namesv ;
880
- OP * old_eval_root ;
881
- SV * cur_text ;
882
- CV * cv ;
883
- JMPENV * cur_top_env ; /* value of PL_top_env when eval CX created */
879
+ SV * old_namesv ;
880
+ OP * old_eval_root ;
881
+ SV * cur_text ;
882
+ CV * cv ;
883
+ JMPENV * cur_top_env ; /* value of PL_top_env when eval CX created */
884
884
};
885
885
886
886
/* If we ever need more than 512 op types, change the shift from 7. blku_gimme
@@ -895,32 +895,32 @@ struct block_eval {
895
895
896
896
/* loop context */
897
897
struct block_loop {
898
- LOOP * my_op ; /* My op, that contains redo, next and last ops. */
899
- union { /* different ways of locating the iteration variable */
900
- SV * * svp ; /* for lexicals: address of pad slot */
901
- GV * gv ; /* for package vars */
902
- } itervar_u ;
903
- SV * itersave ; /* the original iteration var */
898
+ LOOP * my_op ; /* My op, that contains redo, next and last ops. */
899
+ union { /* different ways of locating the iteration variable */
900
+ SV * * svp ; /* for lexicals: address of pad slot */
901
+ GV * gv ; /* for package vars */
902
+ } itervar_u ;
903
+ SV * itersave ; /* the original iteration var */
904
904
union {
905
905
struct { /* CXt_LOOP_ARY, C<for (@ary)> */
906
- AV * ary ; /* array being iterated over */
907
- IV ix ; /* index relative to base of array */
908
- } ary ;
906
+ AV * ary ; /* array being iterated over */
907
+ IV ix ; /* index relative to base of array */
908
+ } ary ;
909
909
struct { /* CXt_LOOP_LIST, C<for (list)> */
910
910
I32 basesp ; /* first element of list on stack */
911
- IV ix ; /* index relative to basesp */
912
- } stack ;
911
+ IV ix ; /* index relative to basesp */
912
+ } stack ;
913
913
struct { /* CXt_LOOP_LAZYIV, C<for (1..9)> */
914
- IV cur ;
915
- IV end ;
916
- } lazyiv ;
914
+ IV cur ;
915
+ IV end ;
916
+ } lazyiv ;
917
917
struct { /* CXt_LOOP_LAZYSV C<for ('a'..'z')> */
918
- SV * cur ;
919
- SV * end ; /* maximum value (or minimum in reverse) */
920
- } lazysv ;
921
- } state_u ;
918
+ SV * cur ;
919
+ SV * end ; /* maximum value (or minimum in reverse) */
920
+ } lazysv ;
921
+ } state_u ;
922
922
#ifdef USE_ITHREADS
923
- PAD * oldcomppad ; /* needed to map itervar_u.svp during thread clone */
923
+ PAD * oldcomppad ; /* needed to map itervar_u.svp during thread clone */
924
924
#endif
925
925
};
926
926
@@ -954,33 +954,33 @@ struct block_loop {
954
954
955
955
/* given/when context */
956
956
struct block_givwhen {
957
- OP * leave_op ;
958
- SV * defsv_save ; /* the original $_ */
957
+ OP * leave_op ;
958
+ SV * defsv_save ; /* the original $_ */
959
959
};
960
960
961
961
962
962
963
963
/* context common to subroutines, evals and loops */
964
964
struct block {
965
- U8 blku_type ; /* what kind of context this is */
966
- U8 blku_gimme ; /* is this block running in list context? */
967
- U16 blku_u16 ; /* used by block_sub and block_eval (so far) */
968
- I32 blku_oldsaveix ; /* saved PL_savestack_ix */
965
+ U8 blku_type ; /* what kind of context this is */
966
+ U8 blku_gimme ; /* is this block running in list context? */
967
+ U16 blku_u16 ; /* used by block_sub and block_eval (so far) */
968
+ I32 blku_oldsaveix ; /* saved PL_savestack_ix */
969
969
/* all the fields above must be aligned with same-sized fields as sbu */
970
- I32 blku_oldsp ; /* current sp floor: where nextstate pops to */
971
- I32 blku_oldmarksp ; /* mark stack index */
972
- COP * blku_oldcop ; /* old curcop pointer */
973
- PMOP * blku_oldpm ; /* values of pattern match vars */
974
- SSize_t blku_old_tmpsfloor ; /* saved PL_tmps_floor */
975
- I32 blku_oldscopesp ; /* scope stack index */
970
+ I32 blku_oldsp ; /* current sp floor: where nextstate pops to */
971
+ I32 blku_oldmarksp ; /* mark stack index */
972
+ COP * blku_oldcop ; /* old curcop pointer */
973
+ PMOP * blku_oldpm ; /* values of pattern match vars */
974
+ SSize_t blku_old_tmpsfloor ; /* saved PL_tmps_floor */
975
+ I32 blku_oldscopesp ; /* scope stack index */
976
976
977
977
union {
978
978
struct block_sub blku_sub ;
979
979
struct block_format blku_format ;
980
980
struct block_eval blku_eval ;
981
981
struct block_loop blku_loop ;
982
982
struct block_givwhen blku_givwhen ;
983
- } blk_u ;
983
+ } blk_u ;
984
984
};
985
985
#define blk_oldsp cx_u.cx_blk.blku_oldsp
986
986
#define blk_oldcop cx_u.cx_blk.blku_oldcop
@@ -1013,21 +1013,21 @@ struct block {
1013
1013
1014
1014
/* substitution context */
1015
1015
struct subst {
1016
- U8 sbu_type ; /* same as blku_type */
1017
- U8 sbu_rflags ;
1018
- U16 sbu_rxtainted ;
1019
- I32 sbu_oldsaveix ; /* same as blku_oldsaveix */
1016
+ U8 sbu_type ; /* same as blku_type */
1017
+ U8 sbu_rflags ;
1018
+ U16 sbu_rxtainted ;
1019
+ I32 sbu_oldsaveix ; /* same as blku_oldsaveix */
1020
1020
/* all the fields above must be aligned with same-sized fields as blk_u */
1021
- SSize_t sbu_iters ;
1022
- SSize_t sbu_maxiters ;
1023
- char * sbu_orig ;
1024
- SV * sbu_dstr ;
1025
- SV * sbu_targ ;
1026
- char * sbu_s ;
1027
- char * sbu_m ;
1028
- char * sbu_strend ;
1029
- void * sbu_rxres ;
1030
- REGEXP * sbu_rx ;
1021
+ SSize_t sbu_iters ;
1022
+ SSize_t sbu_maxiters ;
1023
+ char * sbu_orig ;
1024
+ SV * sbu_dstr ;
1025
+ SV * sbu_targ ;
1026
+ char * sbu_s ;
1027
+ char * sbu_m ;
1028
+ char * sbu_strend ;
1029
+ void * sbu_rxres ;
1030
+ REGEXP * sbu_rx ;
1031
1031
};
1032
1032
1033
1033
#ifdef PERL_CORE
@@ -1083,7 +1083,7 @@ struct context {
1083
1083
union {
1084
1084
struct block cx_blk ;
1085
1085
struct subst cx_subst ;
1086
- } cx_u ;
1086
+ } cx_u ;
1087
1087
};
1088
1088
#define cx_type cx_u.cx_subst.sbu_type
1089
1089
@@ -1223,10 +1223,10 @@ struct context {
1223
1223
#define PERLSI_REGCOMP 11
1224
1224
1225
1225
struct stackinfo {
1226
- AV * si_stack ; /* stack for current runlevel */
1227
- PERL_CONTEXT * si_cxstack ; /* context stack for runlevel */
1228
- struct stackinfo * si_prev ;
1229
- struct stackinfo * si_next ;
1226
+ AV * si_stack ; /* stack for current runlevel */
1227
+ PERL_CONTEXT * si_cxstack ; /* context stack for runlevel */
1228
+ struct stackinfo * si_prev ;
1229
+ struct stackinfo * si_next ;
1230
1230
I32 si_cxix ; /* current context index */
1231
1231
I32 si_cxmax ; /* maximum allocated index */
1232
1232
I32 si_cxsubix ; /* topmost sub/eval/format */
@@ -1236,7 +1236,7 @@ struct stackinfo {
1236
1236
* with DEBUGGING, but not
1237
1237
* #ifdef-ed for bincompat */
1238
1238
#if defined DEBUGGING && !defined DEBUGGING_RE_ONLY
1239
- /* high water mark: for checking if the stack was correctly
1239
+ /* high water mark: for checking if the stack was correctly
1240
1240
* extended / tested for extension by each pp function */
1241
1241
SSize_t si_stack_hwm ;
1242
1242
#endif
0 commit comments