Algorithm-Line-Lerp

 view release on metacpan or  search on metacpan

ppport.h  view on Meta::CPAN

{
    # Returns integer 7 digit human-readable version, suitable for use in file
    # names in parts/todo parts/base.

    return 0 + join "", map { sprintf("%03d", $_) } parse_version(shift);
}

sub ivers    # Shorter name for int_parse_version
{
    return int_parse_version(shift);
}

sub format_version_line
{
    # Returns a floating point representation of the input version

    my $version = int_parse_version(shift);
    $version =~ s/ ^  ( $r_pat ) \B /$1./x;
    return $version;
}

BEGIN {
  if ("$]" < "5.006" ) {
    # On early perls, the implicit pass by reference doesn't work, so we have
    # to use the globals to initialize.
    eval q[sub dictionary_order($$) { _dictionary_order($a, $b) } ];
  } elsif ("$]" < "5.022" ) {
    eval q[sub dictionary_order($$) { _dictionary_order(@_) } ];
  } else {
    eval q[sub dictionary_order :prototype($$) { _dictionary_order(@_) } ];
  }
}

sub _dictionary_order { # Sort caselessly, ignoring punct
    my ($valid_a, $valid_b) = @_;

    my ($lc_a, $lc_b);
    my ($squeezed_a, $squeezed_b);

    $valid_a = '' unless defined $valid_a;
    $valid_b = '' unless defined $valid_b;

    $lc_a = lc $valid_a;
    $lc_b = lc $valid_b;

    $squeezed_a = $lc_a;
    $squeezed_a =~ s/^_+//g;    # No leading underscores
    $squeezed_a =~ s/\B_+\B//g; # No connecting underscores
    $squeezed_a =~ s/[\W]//g;   # No punct

    $squeezed_b = $lc_b;
    $squeezed_b =~ s/^_+//g;
    $squeezed_b =~ s/\B_+\B//g;
    $squeezed_b =~ s/[\W]//g;

    return( $squeezed_a cmp $squeezed_b
         or       $lc_a cmp $lc_b
         or    $valid_a cmp $valid_b);
}

sub sort_api_lines  # Sort lines of the form flags|return|name|args...
                    # by 'name'
{
    $a =~ / ^ [^|]* \| [^|]* \| ( [^|]* ) /x; # 3rd field '|' is sep
    my $a_name = $1;
    $b =~ / ^ [^|]* \| [^|]* \| ( [^|]* ) /x;
    my $b_name = $1;
    return dictionary_order($a_name, $b_name);
}

1;

use strict;

BEGIN { require warnings if "$]" > '5.006' }

# Disable broken TRIE-optimization
BEGIN { eval '${^RE_TRIE_MAXBUF} = -1' if "$]" >= "5.009004" && "$]" <= "5.009005"}

my $VERSION = 3.68;

my %opt = (
  quiet     => 0,
  diag      => 1,
  hints     => 1,
  changes   => 1,
  cplusplus => 0,
  filter    => 1,
  strip     => 0,
  version   => 0,
);

my($ppport) = $0 =~ /([\w.]+)$/;
my $LF = '(?:\r\n|[\r\n])';   # line feed
my $HS = "[ \t]";             # horizontal whitespace

# Never use C comments in this file!
my $ccs  = '/'.'*';
my $cce  = '*'.'/';
my $rccs = quotemeta $ccs;
my $rcce = quotemeta $cce;

eval {
  require Getopt::Long;
  Getopt::Long::GetOptions(\%opt, qw(
    help quiet diag! filter! hints! changes! cplusplus strip version
    patch=s copy=s diff=s compat-version=s
    list-provided list-unsupported api-info=s
  )) or usage();
};

if ($@ and grep /^-/, @ARGV) {
  usage() if "@ARGV" =~ /^--?h(?:elp)?$/;
  die "Getopt::Long not found. Please don't use any options.\n";
}

if ($opt{version}) {
  print "This is $0 $VERSION.\n";
  exit 0;
}

ppport.h  view on Meta::CPAN

compute_EXACTish|5.017003||Vniu
COND_BROADCAST|5.005000||Viu
COND_DESTROY|5.005000||Viu
COND_INIT|5.005000||Viu
COND_SIGNAL|5.005000||Viu
COND_WAIT|5.005000||Viu
connect|5.005000||Viu
construct_ahocorasick_from_trie|5.021001||Viu
CONTINUE_PAT_MOD|5.009005||Viu
cop_fetch_label|5.031004|5.031004|x
CopFILE|5.006000|5.003007|p
CopFILEAV|5.006000|5.003007|p
CopFILEAVn|5.035006|5.035006|
cop_file_avn|5.035006||cVu
CopFILEAVx|5.009003||Viu
CopFILE_free|5.007003||Viu
CopFILEGV|5.006000|5.003007|p
CopFILEGV_set|5.006000|5.003007|p
CopFILE_set|5.006000|5.003007|p
CopFILE_setn|5.009005||Viu
CopFILESV|5.006000|5.003007|p
cop_free|5.006000||Viu
cophh_2hv|5.013007|5.013007|x
cophh_copy|5.013007|5.013007|x
cophh_delete_pv|5.013007|5.013007|x
cophh_delete_pvn|5.013007|5.013007|x
cophh_delete_pvs|5.013007|5.013007|x
cophh_delete_sv|5.013007|5.013007|x
COPHH_EXISTS|5.033008||Viu
cophh_exists_pv|5.033008|5.033008|x
cophh_exists_pvn|5.033008|5.033008|x
cophh_exists_pvs|5.033008|5.033008|x
cophh_exists_sv|5.033008|5.033008|x
cophh_fetch_pv|5.013007|5.013007|x
cophh_fetch_pvn|5.013007|5.013007|x
cophh_fetch_pvs|5.013007|5.013007|x
cophh_fetch_sv|5.013007|5.013007|x
cophh_free|5.013007|5.013007|x
COPHH_KEY_UTF8|5.013007|5.013007|
cophh_new_empty|5.013007|5.013007|x
cophh_store_pv|5.013007|5.013007|x
cophh_store_pvn|5.013007|5.013007|x
cophh_store_pvs|5.013007|5.013007|x
cophh_store_sv|5.013007|5.013007|x
CopHINTHASH_get|5.013007||Viu
CopHINTHASH_set|5.013007||Viu
cop_hints_2hv|5.013007|5.013007|
cop_hints_exists_pv|5.033008|5.033008|
cop_hints_exists_pvn|5.033008|5.033008|
cop_hints_exists_pvs|5.033008|5.033008|
cop_hints_exists_sv|5.033008|5.033008|
cop_hints_fetch_pv|5.013007|5.013007|
cop_hints_fetch_pvn|5.013007|5.013007|
cop_hints_fetch_pvs|5.013007|5.013007|
cop_hints_fetch_sv|5.013007|5.013007|
CopHINTS_get|5.009004||Viu
CopHINTS_set|5.009004||Viu
CopLABEL|5.009005|5.009005|
CopLABEL_alloc|5.009005||Viu
CopLABEL_len|5.016000|5.016000|
CopLABEL_len_flags|5.016000|5.016000|
CopLINE|5.006000|5.006000|
CopLINE_dec|5.006000||Viu
CopLINE_inc|5.006000||Viu
CopLINE_set|5.006000||Viu
COP_SEQMAX_INC|5.021006||Viu
COP_SEQ_RANGE_HIGH|5.009005||Viu
COP_SEQ_RANGE_LOW|5.009005||Viu
CopSTASH|5.006000|5.003007|p
CopSTASH_eq|5.006000|5.003007|p
CopSTASH_ne|5.006000||Viu
CopSTASHPV|5.006000|5.003007|p
CopSTASHPV_set|5.017001|5.017001|p
CopSTASH_set|5.006000|5.003007|p
cop_store_label|5.031004|5.031004|x
Copy|5.003007|5.003007|
CopyD|5.009002|5.003007|p
copy_length|||Viu
core_prototype|5.015002||Vi
coresub_op|5.015003||Viu
CowREFCNT|5.017007||Viu
cPADOP|5.006000||Viu
cPADOPo|5.006000||Viu
cPADOPx|5.006000||Viu
CPERLarg|5.005000||Viu
CPERLscope|5.005000|5.003007|pdV
cPMOP|5.003007||Viu
cPMOPo|5.004005||Viu
cPMOPx|5.006000||Viu
CPPLAST|5.006000|5.006000|Vn
CPPMINUS|5.003007|5.003007|Vn
CPPRUN|5.006000|5.006000|Vn
CPPSTDIN|5.003007|5.003007|Vn
cPVOP|5.003007||Viu
cPVOPo|5.004005||Viu
cPVOPx|5.006000||Viu
create_eval_scope|5.009004||xViu
CR_NATIVE|5.019004||Viu
CRNCYSTR|5.027010||Viu
croak|5.003007||vV
croak_caller|5.025004||vVniu
croak_memory_wrap|5.019003||pcVnu
croak_nocontext|5.006000||pvVn
croak_no_mem|5.017006||Vniu
croak_no_modify|5.013003|5.003007|pn
croak_popstack|5.017008||cVniu
croak_sv|5.013001|5.003007|p
croak_xs_usage|5.010001|5.003007|pn
cr_textfilter|5.006000||Viu
crypt|5.009000||Viu
CRYPT_R_PROTO|5.008000|5.008000|Vn
CSH|5.003007|5.003007|Vn
csighandler1|5.031007||cVnu
csighandler3|5.031007||cVnu
csighandler|5.008001||cVnu
cSVOP|5.003007||Viu
cSVOPo|5.004005||Viu
cSVOPo_sv|5.006000||Viu
cSVOP_sv|5.006000||Viu
cSVOPx|5.006000||Viu
cSVOPx_sv|5.006000||Viu

ppport.h  view on Meta::CPAN

CURLYX|5.003007||Viu
CURLYX_end|5.009005||Viu
CURLYX_end_fail|5.009005||Viu
CURLYX_end_fail_t8|5.035004||Viu
CURLYX_end_fail_t8_p8|5.033003||Viu
CURLYX_end_fail_t8_pb|5.033003||Viu
CURLYX_end_fail_tb|5.035004||Viu
CURLYX_end_fail_tb_p8|5.033003||Viu
CURLYX_end_fail_tb_pb|5.033003||Viu
CURLYX_end_t8|5.035004||Viu
CURLYX_end_t8_p8|5.033003||Viu
CURLYX_end_t8_pb|5.033003||Viu
CURLYX_end_tb|5.035004||Viu
CURLYX_end_tb_p8|5.033003||Viu
CURLYX_end_tb_pb|5.033003||Viu
CURLYX_t8|5.035004||Viu
CURLYX_t8_p8|5.033003||Viu
CURLYX_t8_pb|5.033003||Viu
CURLYX_tb|5.035004||Viu
CURLYX_tb_p8|5.033003||Viu
CURLYX_tb_pb|5.033003||Viu
CURRENT_FEATURE_BUNDLE|5.015007||Viu
CURRENT_HINTS|5.015007||Viu
current_re_engine|5.017001||cViu
curse|5.013009||Viu
custom_op_desc|5.007003|5.007003|d
custom_op_get_field|5.019006||cViu
custom_op_name|5.007003|5.007003|d
custom_op_register|||
CUTGROUP|5.009005||Viu
CUTGROUP_next|5.009005||Viu
CUTGROUP_next_fail|5.009005||Viu
CUTGROUP_next_fail_t8|5.035004||Viu
CUTGROUP_next_fail_t8_p8|5.033003||Viu
CUTGROUP_next_fail_t8_pb|5.033003||Viu
CUTGROUP_next_fail_tb|5.035004||Viu
CUTGROUP_next_fail_tb_p8|5.033003||Viu
CUTGROUP_next_fail_tb_pb|5.033003||Viu
CUTGROUP_next_t8|5.035004||Viu
CUTGROUP_next_t8_p8|5.033003||Viu
CUTGROUP_next_t8_pb|5.033003||Viu
CUTGROUP_next_tb|5.035004||Viu
CUTGROUP_next_tb_p8|5.033003||Viu
CUTGROUP_next_tb_pb|5.033003||Viu
CUTGROUP_t8|5.035004||Viu
CUTGROUP_t8_p8|5.033003||Viu
CUTGROUP_t8_pb|5.033003||Viu
CUTGROUP_tb|5.035004||Viu
CUTGROUP_tb_p8|5.033003||Viu
CUTGROUP_tb_pb|5.033003||Viu
CvANON|5.003007||Viu
CvANONCONST|5.021008||Viu
CvANONCONST_off|5.021008||Viu
CvANONCONST_on|5.021008||Viu
CvANON_off|5.003007||Viu
CvANON_on|5.003007||Viu
CvAUTOLOAD|5.015004||Viu
CvAUTOLOAD_off|5.015004||Viu
CvAUTOLOAD_on|5.015004||Viu
cv_ckproto|5.009004||Viu
cv_ckproto_len_flags|5.015004||xcViu
CvCLONE|5.003007||Viu
cv_clone|5.015001|5.015001|
CvCLONED|5.003007||Viu
CvCLONED_off|5.003007||Viu
CvCLONED_on|5.003007||Viu
cv_clone_into|5.017004||Viu
CvCLONE_off|5.003007||Viu
CvCLONE_on|5.003007||Viu
CvCONST|5.007001||Viu
CvCONST_off|5.007001||Viu
CvCONST_on|5.007001||Viu
cv_const_sv|5.003007|5.003007|n
cv_const_sv_or_av|5.019003||Vniu
CvCVGV_RC|5.013003||Viu
CvCVGV_RC_off|5.013003||Viu
CvCVGV_RC_on|5.013003||Viu
CvDEPTH|5.003007|5.003007|nu
CvDEPTHunsafe|5.021006||Viu
cv_dump|5.006000||Vi
CvDYNFILE|5.015002||Viu
CvDYNFILE_off|5.015002||Viu
CvDYNFILE_on|5.015002||Viu
CvEVAL|5.005003||Viu
CvEVAL_off|5.005003||Viu
CvEVAL_on|5.005003||Viu
CVf_ANON|5.003007||Viu
CVf_ANONCONST|5.021008||Viu
CVf_AUTOLOAD|5.015004||Viu
CVf_BUILTIN_ATTRS|5.008000||Viu
CVf_CLONE|5.003007||Viu
CVf_CLONED|5.003007||Viu
CVf_CONST|5.007001||Viu
CVf_CVGV_RC|5.013003||Viu
CVf_DYNFILE|5.015002||Viu
CVf_HASEVAL|5.017002||Viu
CvFILE|5.006000||Viu
CvFILEGV|5.003007||Viu
CvFILE_set_from_cop|5.007002||Viu
CVf_ISXSUB|5.009004||Viu
CvFLAGS|5.003007||Viu
CVf_LEXICAL|5.021004||Viu
CVf_LVALUE|5.006000||Viu
CVf_METHOD|5.005000||Viu
CVf_NAMED|5.017004||Viu
CVf_NODEBUG|5.004000||Viu
cv_forget_slab|5.017002||Vi
CVf_SIGNATURE|5.035009||Viu
CVf_SLABBED|5.017002||Viu
CVf_UNIQUE|5.004000||Viu
CVf_WEAKOUTSIDE|5.008001||Viu
cv_get_call_checker|5.013006|5.013006|
cv_get_call_checker_flags|5.027003|5.027003|
CvGV|5.003007|5.003007|
cvgv_from_hek|||ciu
cvgv_set|5.013003||cViu
CvGV_set|5.013003||Viu
CvHASEVAL|5.017002||Viu
CvHASEVAL_off|5.017002||Viu
CvHASEVAL_on|5.017002||Viu
CvHASGV|5.021004||Viu
CvHSCXT|5.021006||Viu
CvISXSUB|5.009004||Viu
CvISXSUB_off|5.009004||Viu
CvISXSUB_on|5.009004||Viu
CvLEXICAL|5.021004||Viu
CvLEXICAL_off|5.021004||Viu
CvLEXICAL_on|5.021004||Viu
CvLVALUE|5.006000||Viu
CvLVALUE_off|5.006000||Viu
CvLVALUE_on|5.006000||Viu
CvMETHOD|5.005000||Viu
CvMETHOD_off|5.005000||Viu
CvMETHOD_on|5.005000||Viu
cv_name|5.021005|5.021005|
CvNAMED|5.017004||Viu
CvNAMED_off|5.017004||Viu
CvNAMED_on|5.017004||Viu
CvNAME_HEK_set|5.017004||Viu
CV_NAME_NOTQUAL|5.021005|5.021005|
CvNODEBUG|5.004000||Viu
CvNODEBUG_off|5.004000||Viu
CvNODEBUG_on|5.004000||Viu
CvOUTSIDE|5.003007||Viu
CvOUTSIDE_SEQ|5.008001||Viu
CvPADLIST|5.008001|5.008001|x
CvPADLIST_set|5.021006||Viu
CvPROTO|5.015004||Viu
CvPROTOLEN|5.015004||Viu
CvROOT|5.003007||Viu
cv_set_call_checker|5.013006|5.013006|
cv_set_call_checker_flags|5.021004|5.021004|
CvSIGNATURE|5.035009||Viu
CvSIGNATURE_off|5.035009||Viu
CvSIGNATURE_on|5.035009||Viu
CvSLABBED|5.017002||Viu
CvSLABBED_off|5.017002||Viu
CvSLABBED_on|5.017002||Viu
CvSPECIAL|5.005003||Viu
CvSPECIAL_off|5.005003||Viu
CvSPECIAL_on|5.005003||Viu
CvSTART|5.003007||Viu
CvSTASH|5.003007|5.003007|
cvstash_set|5.013007||cViu
CvSTASH_set|5.013007||Viu
cv_undef|5.003007|5.003007|
cv_undef_flags|5.021004||Viu
CV_UNDEF_KEEP_NAME|5.021004||Viu
CvUNIQUE|5.004000||Viu
CvUNIQUE_off|5.004000||Viu
CvUNIQUE_on|5.004000||Viu
CvWEAKOUTSIDE|5.008001||Vi
CvWEAKOUTSIDE_off|5.008001||Viu
CvWEAKOUTSIDE_on|5.008001||Viu
CvXSUB|5.003007||Viu
CvXSUBANY|5.003007||Viu
CX_CUR|5.023008||Viu
CX_CURPAD_SAVE|5.008001||Vi
CX_CURPAD_SV|5.008001||Vi
CX_DEBUG|5.023008||Viu
cx_dump|5.003007||cVu
cx_dup|5.006000||cVu
CxEVALBLOCK|5.033007||Viu
CxEVAL_TXT_REFCNTED|5.025007||Viu
CxFOREACH|5.009003||Viu
CxHASARGS|5.010001||Viu
cxinc|5.003007||cVu
CXINC|5.003007||Viu
CxITERVAR|5.006000||Viu
CxLABEL|5.010001||Viu
CxLABEL_len|5.016000||Viu
CxLABEL_len_flags|5.016000||Viu
CX_LEAVE_SCOPE|5.023008||Viu
CxLVAL|5.010001||Viu
CxMULTICALL|5.009003||Viu
CxOLD_IN_EVAL|5.010001||Viu
CxOLD_OP_TYPE|5.010001||Viu
CxONCE|5.010001||Viu
CxPADLOOP|5.006000||Viu
CXp_EVALBLOCK|5.033007||Viu
CXp_FINALLY|5.035008||Viu
CXp_FOR_DEF|5.027008||Viu
CXp_FOR_GV|5.023008||Viu
CXp_FOR_LVREF|5.021005||Viu
CXp_FOR_PAD|5.023008||Viu
CXp_HASARGS|5.011000||Viu
CXp_MULTICALL|5.009003||Viu
CXp_ONCE|5.011000||Viu
CX_POP|5.023008||Viu
cx_popblock|5.023008||xcVu
cx_popeval|5.023008||xcVu
cx_popformat|5.023008||xcVu
cx_popgiven|5.027008||xcVu
cx_poploop|5.023008||xcVu
CX_POP_SAVEARRAY|5.023008||Viu
cx_popsub|5.023008||xcVu
cx_popsub_args|5.023008||xcVu
cx_popsub_common|5.023008||xcVu
CX_POPSUBST|5.023008||Viu
cx_popwhen|5.027008||xcVu
CXp_REAL|5.005003||Viu
CXp_SUB_RE|5.018000||Viu
CXp_SUB_RE_FAKE|5.018000||Viu
CXp_TRY|5.033007||Viu
CXp_TRYBLOCK|5.006000||Viu
cx_pushblock|5.023008||xcVu
cx_pusheval|5.023008||xcVu
cx_pushformat|5.023008||xcVu
cx_pushgiven|5.027008||xcVu
cx_pushloop_for|5.023008||xcVu
cx_pushloop_plain|5.023008||xcVu
cx_pushsub|5.023008||xcVu
CX_PUSHSUB_GET_LVALUE_MASK|5.023008||Viu
CX_PUSHSUBST|5.023008||Viu
cx_pushtry|5.033007||xcVu
cx_pushwhen|5.027008||xcVu
CxREALEVAL|5.005003||Viu
cxstack|5.005000||Viu
cxstack_ix|5.005000||Viu
cxstack_max|5.005000||Viu
CXt_BLOCK|5.003007||Viu
CXt_DEFER|5.035004||Viu
CXt_EVAL|5.003007||Viu
CXt_FORMAT|5.006000||Viu
CXt_GIVEN|5.027008||Viu
CXt_LOOP_ARY|5.023008||Viu
CXt_LOOP_LAZYIV|5.011000||Viu
CXt_LOOP_LAZYSV|5.011000||Viu
CXt_LOOP_LIST|5.023008||Viu
CXt_LOOP_PLAIN|5.011000||Viu
CXt_NULL|5.003007||Viu
cx_topblock|5.023008||xcVu

ppport.h  view on Meta::CPAN

FILL_ADVANCE_NODE_ARGp|5.031010||Viu
FILL_NODE|5.029004||Viu
filter_add|5.003007|5.003007|
FILTER_DATA|5.003007||Viu
filter_del|5.003007|5.003007|u
filter_gets|5.005000||Viu
FILTER_ISREADER|5.003007||Viu
filter_read|5.003007|5.003007|
FILTER_READ|5.003007||Viu
finalize_op|5.015002||Viu
finalize_optree|5.015002||Vi
find_and_forget_pmops|5.009005||Viu
find_array_subscript|5.009004||Viu
find_beginning|5.005000||Viu
find_byclass|5.006000||Viu
find_default_stash|5.019004||Viu
find_first_differing_byte_pos|5.031007||Vniu
find_hash_subscript|5.009004||Viu
find_in_my_stash|5.006001||Viu
find_lexical_cv|5.019001||Viu
find_next_masked|5.027009||Vniu
find_runcv|5.009005|5.009005|
FIND_RUNCV_level_eq|5.017002||Viu
FIND_RUNCV_padid_eq|5.017004||Viu
find_runcv_where|5.017002||Viu
find_rundefsv|5.013002|5.013002|
find_rundefsvoffset|5.009002|5.009002|d
find_script|5.004005||Viu
find_span_end|5.027009||Vniu
find_span_end_mask|5.027009||Vniu
find_uninit_var|5.009002||xVi
FIRST_NON_ASCII_DECIMAL_DIGIT|5.027007||Viu
first_symbol|5.009003||Vniu
FIT_ARENA0|||Viu
FIT_ARENAn|||Viu
FIT_ARENA|||Viu
FITS_IN_8_BITS|5.013005||Viu
fixup_errno_string|5.019007||Viu
FLAGS|5.013006||Viu
FLEXFILENAMES|5.003007|5.003007|Vn
float_end_shift|5.009005||Viu
float_max_offset|5.005000||Viu
float_min_offset|5.005000||Viu
float_substr|5.005000||Viu
float_utf8|5.008000||Viu
flock|5.005000||Viu
flockfile|5.003007||Viu
F_log_amg|5.004000||Viu
FmLINES|5.003007||Viu
fold_constants|5.003007||Viu
foldEQ|5.013002|5.013002|n
foldEQ_latin1|5.013008||cVnu
foldEQ_latin1_s2_folded|5.029007||Vniu
foldEQ_locale|5.013002|5.013002|n
FOLDEQ_LOCALE|5.019009||cV
FOLDEQ_S1_ALREADY_FOLDED|5.015004||cV
FOLDEQ_S1_FOLDS_SANE|5.021008||cV
FOLDEQ_S2_ALREADY_FOLDED|5.015004||cV
FOLDEQ_S2_FOLDS_SANE|5.021008||cV
foldEQ_utf8|5.013002|5.007003|p
foldEQ_utf8_flags|5.013010||cVu
FOLDEQ_UTF8_NOMIX_ASCII|5.013010||cV
FOLD_FLAGS_FULL|5.015006||Viu
FOLD_FLAGS_LOCALE|5.015006||Viu
FOLD_FLAGS_NOMIX_ASCII|5.017000||Viu
fopen|5.003007||Viu
forbid_setid|5.005000||Viu
force_ident|5.003007||Viu
force_ident_maybe_lex|5.017004||Viu
force_list|5.003007||Viu
force_next|5.003007||Viu
_force_out_malformed_utf8_message|5.025009||cVu
force_strict_version|5.011004||Viu
force_version|5.005000||Viu
force_word|5.003007||Viu
forget_pmop|5.017007||Viu
form|5.004000||vV
form_alien_digit_msg|5.031009||cViu
form_cp_too_large_msg|5.031009||cViu
form_nocontext|5.006000||vVn
fp_dup|5.007003|5.007003|u
Fpos_t|5.003007|5.003007|Vn
F_pow_amg|5.004000||Viu
FP_PINF|5.021004||Viu
FP_QNAN|5.021004||Viu
fprintf|5.003007||Viu
fprintf_nocontext|5.006000||vdVnu
FPTR2DPTR|5.009003||Viu
fputc|5.003007||Viu
fputs|5.003007||Viu
fread|5.003007||Viu
free|5.003007||Viu
free_and_set_cop_warnings|5.031011||Viu
free_c_backtrace|5.021001||Vi
FreeOp|5.008001||Viu
Free_t|5.003007|5.003007|Vn
FREE_THREAD_KEY|5.006001||Viu
free_tied_hv_pool|5.008001||Viu
FREETMPS|5.003007|5.003007|
free_tmps|5.003007||cVu
freopen|5.003007||Viu
frewind|5.005000||Viu
FROM_INTERNAL_SIZE|5.023002||Viu
fscanf|5.003007||Viu
fseek|5.003007||Viu
FSEEKSIZE|5.006000||Viu
fsetpos|5.003007||Viu
F_sin_amg|5.004000||Viu
F_sqrt_amg|5.004000||Viu
Fstat|5.003007||Viu
fstat|5.005000||Viu
ftell|5.003007||Viu
ftruncate|5.006000||Viu
ftrylockfile|5.003007||Viu
FUNCTION|5.009003||Viu
funlockfile|5.003007||Viu
fwrite1|5.003007||Viu
fwrite|5.003007||Viu
G_ARRAY|5.003007||Viu
GCB_BREAKABLE|5.025003||Viu
GCB_EX_then_EM|5.025003||Viu
GCB_Maybe_Emoji_NonBreak|5.029002||Viu
GCB_NOBREAK|5.025003||Viu
GCB_RI_then_RI|5.025003||Viu
GCC_DIAG_IGNORE|5.019007||Viu
GCC_DIAG_IGNORE_DECL|5.027007||Viu
GCC_DIAG_IGNORE_STMT|5.027007||Viu
GCC_DIAG_PRAGMA|5.021001||Viu
GCC_DIAG_RESTORE|5.019007||Viu
GCC_DIAG_RESTORE_DECL|5.027007||Viu
GCC_DIAG_RESTORE_STMT|5.027007||Viu
Gconvert|5.003007|5.003007|
GDBMNDBM_H_USES_PROTOTYPES|5.032001|5.032001|Vn
G_DISCARD|5.003007|5.003007|
gen_constant_list|5.003007||Viu
get_and_check_backslash_N_name|5.017006||cViu
get_and_check_backslash_N_name_wrapper|5.029009||Viu
get_ANYOF_cp_list_for_ssc|5.019005||Viu
get_ANYOFM_contents|5.027009||Viu
GETATARGET|5.003007||Viu
get_aux_mg|5.011000||Viu
get_av|5.006000|5.003007|p
getc|5.003007||Viu
get_c_backtrace|5.021001||Vi
get_c_backtrace_dump|5.021001||V
get_context|5.006000|5.006000|nu
getc_unlocked|5.003007||Viu
get_cv|5.006000|5.003007|p
get_cvn_flags|5.009005|5.003007|p
get_cvs|5.011000|5.003007|p
getcwd_sv|5.007002|5.007002|
get_db_sub|||iu
get_debug_opts|5.008001||Viu
get_deprecated_property_msg|5.031011||cVniu
getegid|5.005000||Viu
getenv|5.005000||Viu
getenv_len|5.006000||Viu
GETENV_LOCK|5.033005||Viu
GETENV_PRESERVES_OTHER_THREAD|5.033005|5.033005|Vn
GETENV_UNLOCK|5.033005||Viu
geteuid|5.005000||Viu
getgid|5.005000||Viu
getgrent|5.009000||Viu
GETGRENT_R_HAS_BUFFER|5.008000||Viu
GETGRENT_R_HAS_FPTR|5.008000||Viu
GETGRENT_R_HAS_PTR|5.008000||Viu
GETGRENT_R_PROTO|5.008000|5.008000|Vn
getgrgid|5.009000||Viu
GETGRGID_R_HAS_BUFFER|5.008000||Viu
GETGRGID_R_HAS_PTR|5.008000||Viu
GETGRGID_R_PROTO|5.008000|5.008000|Vn
getgrnam|5.009000||Viu
GETGRNAM_R_HAS_BUFFER|5.008000||Viu
GETGRNAM_R_HAS_PTR|5.008000||Viu
GETGRNAM_R_PROTO|5.008000|5.008000|Vn
get_hash_seed|5.008001||Viu
gethostbyaddr|5.005000||Viu
GETHOSTBYADDR_R_HAS_BUFFER|5.008000||Viu
GETHOSTBYADDR_R_HAS_ERRNO|5.008000||Viu
GETHOSTBYADDR_R_HAS_PTR|5.008000||Viu
GETHOSTBYADDR_R_PROTO|5.008000|5.008000|Vn
gethostbyname|5.005000||Viu
GETHOSTBYNAME_R_HAS_BUFFER|5.008000||Viu
GETHOSTBYNAME_R_HAS_ERRNO|5.008000||Viu
GETHOSTBYNAME_R_HAS_PTR|5.008000||Viu
GETHOSTBYNAME_R_PROTO|5.008000|5.008000|Vn
gethostent|5.005000||Viu
GETHOSTENT_R_HAS_BUFFER|5.008000||Viu
GETHOSTENT_R_HAS_ERRNO|5.008000||Viu
GETHOSTENT_R_HAS_PTR|5.008000||Viu
GETHOSTENT_R_PROTO|5.008000|5.008000|Vn
gethostname|5.005000||Viu
get_hv|5.006000|5.003007|p
get_invlist_iter_addr|5.015001||Vniu
get_invlist_offset_addr|5.019002||Vniu
get_invlist_previous_index_addr|5.017004||Vniu
getlogin|5.005000||Viu
GETLOGIN_R_PROTO|5.008000|5.008000|Vn
get_mstats|5.006000||Vu
getnetbyaddr|5.005000||Viu
GETNETBYADDR_R_HAS_BUFFER|5.008000||Viu
GETNETBYADDR_R_HAS_ERRNO|5.008000||Viu
GETNETBYADDR_R_HAS_PTR|5.008000||Viu
GETNETBYADDR_R_PROTO|5.008000|5.008000|Vn
getnetbyname|5.005000||Viu
GETNETBYNAME_R_HAS_BUFFER|5.008000||Viu
GETNETBYNAME_R_HAS_ERRNO|5.008000||Viu
GETNETBYNAME_R_HAS_PTR|5.008000||Viu
GETNETBYNAME_R_PROTO|5.008000|5.008000|Vn

ppport.h  view on Meta::CPAN

get_sv|5.006000|5.003007|p
GETTARGET|5.003007||Viu
GETTARGETSTACKED|5.003007||Viu
gettimeofday|5.008000||Viu
getuid|5.005000||Viu
get_vtbl|5.005003|5.005003|u
getw|5.003007||Viu
G_EVAL|5.003007|5.003007|
G_FAKINGEVAL|5.009004||Viu
Gid_t|5.003007|5.003007|Vn
Gid_t_f|5.006000|5.006000|Vn
Gid_t_sign|5.006000|5.006000|Vn
Gid_t_size|5.006000|5.006000|Vn
GIMME|5.003007|5.003007|d
GIMME_V|5.004000|5.004000|
gimme_V|5.031005||xcVu
G_KEEPERR|5.003007|5.003007|
G_LIST|5.035001|5.003007|
glob_2number|5.009004||Viu
GLOBAL_PAT_MOD|5.009005||Viu
glob_assign_glob|5.009004||Viu
G_METHOD|5.006001|5.003007|p
G_METHOD_NAMED|5.019002|5.019002|
gmtime|5.031011||Viu
GMTIME_MAX|5.010001|5.010001|Vn
GMTIME_MIN|5.010001|5.010001|Vn
GMTIME_R_PROTO|5.008000|5.008000|Vn
G_NOARGS|5.003007|5.003007|
G_NODEBUG|5.004005||Viu
GOSUB|5.009005||Viu
GOSUB_t8|5.035004||Viu
GOSUB_t8_p8|5.033003||Viu
GOSUB_t8_pb|5.033003||Viu
GOSUB_tb|5.035004||Viu
GOSUB_tb_p8|5.033003||Viu
GOSUB_tb_pb|5.033003||Viu
gp_dup|5.007003|5.007003|u
gp_free|5.003007|5.003007|u
GPOS|5.004000||Viu
GPOS_t8|5.035004||Viu
GPOS_t8_p8|5.033003||Viu
GPOS_t8_pb|5.033003||Viu
GPOS_tb|5.035004||Viu
GPOS_tb_p8|5.033003||Viu
GPOS_tb_pb|5.033003||Viu
gp_ref|5.003007|5.003007|u
GREEK_CAPITAL_LETTER_MU|5.013011||Viu
GREEK_SMALL_LETTER_MU|5.013008||Viu
G_RE_REPARSING|5.017011||Viu
G_RETHROW|5.031002|5.003007|p
grok_atoUV|5.021010||cVni
grok_bin|5.007003|5.003007|p
grok_bin_oct_hex|5.031008||cVu
grok_bslash_c|5.013001||cViu
grok_bslash_N|5.017003||Viu
grok_bslash_o|5.013003||cViu
grok_bslash_x|5.017002||cViu
grok_hex|5.007003|5.003007|p
grok_infnan|5.021004|5.021004|
grok_number|5.007002|5.003007|p
grok_number_flags|5.021002|5.021002|
GROK_NUMERIC_RADIX|5.007002|5.003007|p
grok_numeric_radix|5.007002|5.003007|p
grok_oct|5.007003|5.003007|p
group_end|5.007003||Viu
GROUPP|5.005000||Viu
GROUPPN|5.031001||Viu
GROUPPN_t8|5.035004||Viu
GROUPPN_t8_p8|5.033003||Viu
GROUPPN_t8_pb|5.033003||Viu
GROUPPN_tb|5.035004||Viu
GROUPPN_tb_p8|5.033003||Viu
GROUPPN_tb_pb|5.033003||Viu
GROUPP_t8|5.035004||Viu
GROUPP_t8_p8|5.033003||Viu
GROUPP_t8_pb|5.033003||Viu
GROUPP_tb|5.035004||Viu
GROUPP_tb_p8|5.033003||Viu
GROUPP_tb_pb|5.033003||Viu
Groups_t|5.003007|5.003007|Vn
GRPASSWD|5.005000|5.005000|Vn
G_SCALAR|5.003007|5.003007|
G_UNDEF_FILL|5.013001||Viu
GV_ADD|5.003007|5.003007|
gv_add_by_type|5.011000|5.011000|u
GV_ADDMG|5.015003|5.015003|
GV_ADDMULTI|5.003007|5.003007|
GV_ADDWARN|5.003007|5.003007|
Gv_AMG|5.003007||Viu
Gv_AMupdate|5.011000|5.011000|u
GvASSUMECV|5.003007||Viu
GvASSUMECV_off|5.003007||Viu
GvASSUMECV_on|5.003007||Viu
gv_autoload4|5.004000|5.004000|
GV_AUTOLOAD|5.011000||Viu
GV_AUTOLOAD_ISMETHOD|5.015004||Viu
gv_autoload_pv|5.015004|5.015004|u
gv_autoload_pvn|5.015004|5.015004|u
gv_autoload_sv|5.015004|5.015004|u
GvAV|5.003007|5.003007|
gv_AVadd|5.003007|5.003007|u
GvAVn|5.003007||Viu
GV_CACHE_ONLY|5.021004||Vi
gv_check|5.003007||cVu
gv_const_sv|5.009003|5.009003|
GV_CROAK|5.011000||Viu
GvCV|5.003007|5.003007|
GvCVGEN|5.003007||Viu
GvCV_set|5.013010||Viu
GvCVu|5.004000||Viu
gv_dump|5.006000|5.006000|u
gv_efullname3|5.003007|5.003007|u
gv_efullname4|5.006001|5.006001|u
gv_efullname|5.003007|5.003007|du
GvEGV|5.003007||Viu
GvEGVx|5.013000||Viu
GvENAME|5.003007||Viu
GvENAME_HEK|5.015004||Viu
GvENAMELEN|5.015004||Viu
GvENAMEUTF8|5.015004||Viu
GvESTASH|5.003007||Viu
GVf_ASSUMECV|5.003007||Viu
gv_fetchfile|5.003007|5.003007|
gv_fetchfile_flags|5.009005|5.009005|
gv_fetchmeth|5.003007|5.003007|
gv_fetchmeth_autoload|5.007003|5.007003|
gv_fetchmeth_internal|5.021007||Viu
gv_fetchmethod|5.003007|5.003007|
gv_fetchmethod_autoload|5.004000|5.004000|
gv_fetchmethod_flags|5.015004||Viu
gv_fetchmethod_pv_flags|5.015004|5.015004|xu
gv_fetchmethod_pvn_flags|5.015004|5.015004|xu
gv_fetchmethod_sv_flags|5.015004|5.015004|xu
gv_fetchmeth_pv|5.015004|5.015004|
gv_fetchmeth_pv_autoload|5.015004|5.015004|
gv_fetchmeth_pvn|5.015004|5.015004|
gv_fetchmeth_pvn_autoload|5.015004|5.015004|
gv_fetchmeth_sv|5.015004|5.015004|
gv_fetchmeth_sv_autoload|5.015004|5.015004|
gv_fetchpv|5.003007|5.003007|
gv_fetchpvn|5.013006|5.013006|
gv_fetchpvn_flags|5.009002|5.003007|p
gv_fetchpvs|5.009004|5.003007|p
gv_fetchsv|5.009002|5.003007|p
gv_fetchsv_nomg|5.015003|5.015003|
GvFILE|5.006000||Viu
GvFILEGV|5.003007||Viu
GvFILE_HEK|5.009004||Viu
GvFILEx|5.019006||Viu
GVf_IMPORTED|5.003007||Viu
GVf_IMPORTED_AV|5.003007||Viu
GVf_IMPORTED_CV|5.003007||Viu
GVf_IMPORTED_HV|5.003007||Viu
GVf_IMPORTED_SV|5.003007||Viu
GVf_INTRO|5.003007||Viu
GvFLAGS|5.003007||Viu
GVf_MULTI|5.003007||Viu
GVF_NOADD|5.035006||Viu
GvFORM|5.003007||Viu
gv_fullname3|5.003007|5.003007|u
gv_fullname4|5.006001|5.006001|u
gv_fullname|5.003007|5.003007|du
GvGP|5.003007||Viu
GvGPFLAGS|5.021004||Viu
GvGP_set|5.013010||Viu
gv_handler|5.007001|5.007001|u
GvHV|5.003007|5.003007|
gv_HVadd|5.003007|5.003007|u
GvHVn|5.003007||Viu
GvIMPORTED|5.003007||Viu
GvIMPORTED_AV|5.003007||Viu
GvIMPORTED_AV_off|5.003007||Viu
GvIMPORTED_AV_on|5.003007||Viu
GvIMPORTED_CV|5.003007||Viu
GvIMPORTED_CV_off|5.003007||Viu
GvIMPORTED_CV_on|5.003007||Viu
GvIMPORTED_HV|5.003007||Viu
GvIMPORTED_HV_off|5.003007||Viu
GvIMPORTED_HV_on|5.003007||Viu
GvIMPORTED_off|5.003007||Viu
GvIMPORTED_on|5.003007||Viu
GvIMPORTED_SV|5.003007||Viu
GvIMPORTED_SV_off|5.003007||Viu
GvIMPORTED_SV_on|5.003007||Viu
gv_init|5.003007|5.003007|
gv_init_pv|5.015004|5.015004|
gv_init_pvn|5.015004|5.003007|p
gv_init_sv|5.015004|5.015004|
gv_init_svtype|5.015004||Viu
GvIN_PAD|5.006000||Viu
GvIN_PAD_off|5.006000||Viu
GvIN_PAD_on|5.006000||Viu
GvINTRO|5.003007||Viu
GvINTRO_off|5.003007||Viu
GvINTRO_on|5.003007||Viu
GvIO|5.003007||Viu
gv_IOadd|5.003007|5.003007|u
GvIOn|5.003007||Viu
GvIOp|5.003007||Viu
gv_is_in_main|5.019004||Viu
GvLINE|5.003007||Viu
gv_magicalize|5.019004||Viu

ppport.h  view on Meta::CPAN

hv_clear|5.003007|5.003007|
hv_clear_placeholders|5.009001|5.009001|
hv_common|5.010000||cVu
hv_common_key_len|5.010000||cVu
hv_copy_hints_hv|5.013005|5.013005|
hv_delayfree_ent|5.004000|5.004000|u
hv_delete|5.003007|5.003007|
HV_DELETE|5.009005||Viu
hv_delete_common|5.009001||xViu
hv_delete_ent|5.003007|5.003007|
hv_deletehek|5.019006||Viu
hv_deletes|5.025006||Viu
HV_DISABLE_UVAR_XKEY|5.010000||Viu
HvEITER|5.003007||Viu
HvEITER_get|5.009003||Viu
hv_eiter_p|||u
HvEITER_set|5.009003||Viu
hv_eiter_set|||u
HvENAME|5.013007|5.013007|
hv_ename_add|5.013007||Vi
hv_ename_delete|5.013007||Vi
HvENAME_get|5.013007||Viu
HvENAME_HEK|5.013007||Viu
HvENAME_HEK_NN|5.013007||Viu
HvENAMELEN|5.015004|5.015004|
HvENAMELEN_get|5.013007||Viu
HvENAMEUTF8|5.015004|5.015004|
hv_exists|5.003007|5.003007|
hv_exists_ent|5.003007|5.003007|
hv_existshek|5.035003||Viu
hv_existss|5.025006||Viu
hv_fetch|5.003007|5.003007|
HV_FETCH_EMPTY_HE|5.013007||Viu
hv_fetch_ent|5.003007|5.003007|
hv_fetchhek|5.019006||Viu
HV_FETCH_ISEXISTS|5.009005||Viu
HV_FETCH_ISSTORE|5.009005||Viu
HV_FETCH_JUST_SV|5.009005||Viu
HV_FETCH_LVALUE|5.009005||Viu
hv_fetchs|5.009003|5.003007|p
hv_fill|||
HvFILL|5.003007|5.003007|
hv_free_ent|5.004000|5.004000|u
hv_free_ent_ret|5.015000||Viu
hv_free_entries|5.027002||Viu
HvHASKFLAGS|5.008000||Viu
HvHASKFLAGS_off|5.008000||Viu
HvHASKFLAGS_on|5.008000||Viu
HVhek_ENABLEHVKFLAGS|5.008002||Viu
HVhek_FREEKEY|5.008000||Viu
HVhek_KEYCANONICAL|5.010001||Viu
HVhek_MASK|5.008000||Viu
HVhek_PLACEHOLD|5.008000||Viu
HVhek_UNSHARED|5.009004||Viu
HVhek_UTF8|5.008000||Viu
HVhek_WASUTF8|5.008000||Viu
hv_iterinit|5.003007|5.003007|
hv_iterkey|5.003007|5.003007|
hv_iterkeysv|5.003007|5.003007|
hv_iternext|5.003007|5.003007|
hv_iternext_flags|5.008000|5.008000|x
hv_iternextsv|5.003007|5.003007|
HV_ITERNEXT_WANTPLACEHOLDERS|5.008000|5.008000|
hv_iterval|5.003007|5.003007|
HvKEYS|5.003007||Viu
hv_kill_backrefs|||xiu
hv_ksplit|5.003007|5.003007|u
HvLASTRAND_get|5.017011||Viu
HvLAZYDEL|5.003007||Viu
HvLAZYDEL_off|5.003007||Viu
HvLAZYDEL_on|5.003007||Viu
hv_magic|5.003007|5.003007|
hv_magic_check|5.006000||Vniu
HvMAX|5.003007||Viu
HvMROMETA|5.010001|5.010001|
HvNAME|5.003007|5.003007|
HvNAME_get|5.009003||pcV
HvNAME_HEK|5.009003||Viu
HvNAME_HEK_NN|5.013007||Viu
HvNAMELEN|5.015004|5.015004|
HvNAMELEN_get|5.009003|5.003007|p
hv_name_set|5.009003|5.009003|u
HV_NAME_SETALL|5.013008||Viu
hv_name_sets|5.025006||Viu
HvNAMEUTF8|5.015004|5.015004|
hv_notallowed|5.008000||Viu
HvPLACEHOLDERS|5.007003||Viu
HvPLACEHOLDERS_get|5.009003||Viu
hv_placeholders_get|||u
hv_placeholders_p|||ciu
HvPLACEHOLDERS_set|5.009003||Viu
hv_placeholders_set|||u
hv_pushkv|5.027003||Viu
HvRAND_get|5.017011||Viu
hv_rand_set|5.018000|5.018000|u
HVrhek_delete|5.009004||Viu
HVrhek_IV|5.009004||Viu
HVrhek_PV|5.009004||Viu
HVrhek_PV_UTF8|5.009005||Viu
HVrhek_typemask|5.009004||Viu
HVrhek_undef|5.009004||Viu
HVrhek_UV|5.009004||Viu
HvRITER|5.003007||Viu
HvRITER_get|5.009003||Viu
hv_riter_p|||u
HvRITER_set|5.009003||Viu
hv_riter_set|||u
hv_scalar|5.009001|5.009001|
HvSHAREKEYS|5.003007||Viu
HvSHAREKEYS_off|5.003007||Viu
HvSHAREKEYS_on|5.003007||Viu
hv_store|5.003007|5.003007|
hv_store_ent|5.003007|5.003007|
hv_store_flags|5.008000|5.008000|xu
hv_storehek|5.019006||Viu
hv_stores|5.009004|5.003007|p
HvTOTALKEYS|5.007003||Viu
hv_undef|5.003007|5.003007|
hv_undef_flags|||ciu
HvUSEDKEYS|5.007003||Viu
HYPHEN_UTF8|5.017004||Viu
I16_MAX|5.003007||Viu
I16_MIN|5.003007||Viu
I16SIZE|5.006000|5.006000|Vn
I16TYPE|5.006000|5.006000|Vn
I_32|5.006000|5.003007|
I32_MAX|5.003007||Viu
I32_MAX_P1|5.007002||Viu
I32_MIN|5.003007||Viu
I32SIZE|5.006000|5.006000|Vn
I32TYPE|5.006000|5.006000|Vn
I64SIZE|5.006000|5.006000|Vn
I64TYPE|5.006000|5.006000|Vn
I8SIZE|5.006000|5.006000|Vn
I8_TO_NATIVE|5.015006||Viu
I8_TO_NATIVE_UTF8|5.019004||Viu
I8TYPE|5.006000|5.006000|Vn
I_ARPA_INET|5.005000|5.005000|Vn
ibcmp|5.003007|5.003007|
ibcmp_locale|5.004000|5.004000|
ibcmp_utf8|5.007003|5.007003|
I_CRYPT|5.008000|5.008000|Vn
I_DBM|5.032001|5.032001|Vn
I_DIRENT|5.003007|5.003007|Vn
I_DLFCN|5.003007|5.003007|Vn
I_EXECINFO|5.021001|5.021001|Vn
I_FENV|5.021004|5.021004|Vn
IFMATCH|5.003007||Viu
IFMATCH_A|5.009005||Viu
IFMATCH_A_fail|5.009005||Viu
IFMATCH_A_fail_t8|5.035004||Viu
IFMATCH_A_fail_t8_p8|5.033003||Viu
IFMATCH_A_fail_t8_pb|5.033003||Viu
IFMATCH_A_fail_tb|5.035004||Viu
IFMATCH_A_fail_tb_p8|5.033003||Viu
IFMATCH_A_fail_tb_pb|5.033003||Viu
IFMATCH_A_t8|5.035004||Viu
IFMATCH_A_t8_p8|5.033003||Viu
IFMATCH_A_t8_pb|5.033003||Viu
IFMATCH_A_tb|5.035004||Viu
IFMATCH_A_tb_p8|5.033003||Viu
IFMATCH_A_tb_pb|5.033003||Viu
IFMATCH_t8|5.035004||Viu
IFMATCH_t8_p8|5.033003||Viu
IFMATCH_t8_pb|5.033003||Viu
IFMATCH_tb|5.035004||Viu
IFMATCH_tb_p8|5.033003||Viu
IFMATCH_tb_pb|5.033003||Viu
IFTHEN|5.005000||Viu
IFTHEN_t8|5.035004||Viu
IFTHEN_t8_p8|5.033003||Viu
IFTHEN_t8_pb|5.033003||Viu
IFTHEN_tb|5.035004||Viu
IFTHEN_tb_p8|5.033003||Viu
IFTHEN_tb_pb|5.033003||Viu
I_GDBM|5.021007|5.021007|Vn
I_GDBMNDBM|5.021007|5.021007|Vn
IGNORE_PAT_MOD|5.009005||Viu
I_GRP|5.003007|5.003007|Vn

ppport.h  view on Meta::CPAN

isPUNCT_LC_utf8_safe|5.025009|5.006000|p
isPUNCT_LC_uvchr|5.007001|5.007001|
isPUNCT_uni|5.006000||Viu
isPUNCT_utf8|5.031005|5.031005|
isPUNCT_utf8_safe|5.025009|5.006000|p
isPUNCT_uvchr|5.023009|5.006000|p
is_QUOTEMETA_high|5.017004||Viu
isREGEXP|5.017006||Viu
IS_SAFE_PATHNAME|5.019004||Viu
IS_SAFE_SYSCALL|5.019004|5.019004|
is_safe_syscall|5.019004|5.019004|
isSB|5.021009||Viu
isSCRIPT_RUN|5.027008||cVi
is_SHORTER_NON_CHARS_utf8|5.035003||Viu
isSPACE|5.003007|5.003007|p
isSPACE_A|5.013006|5.003007|p
isSPACE_L1|5.013006|5.003007|p
isSPACE_LC|5.004000|5.004000|
isSPACE_LC_utf8|5.006000||Viu
isSPACE_LC_utf8_safe|5.025009|5.006000|p
isSPACE_LC_uvchr|5.007001|5.007001|
isSPACE_uni|5.006000||Viu
isSPACE_utf8|5.031005|5.031005|
isSPACE_utf8_safe|5.025009|5.006000|p
isSPACE_uvchr|5.023009|5.006000|p
is_ssc_worth_it|5.021005||Vniu
isSTRICT_UTF8_CHAR|5.025005|5.025005|n
is_strict_utf8_string|5.025006|5.025006|n
is_strict_utf8_string_loc|5.025006|5.025006|n
is_strict_utf8_string_loclen|5.025006|5.025006|n
is_STRICT_VERSION|5.011004||Viu
is_SURROGATE_utf8|5.035004||Viu
is_SURROGATE_utf8_safe|5.025005||Viu
I_STDARG|5.003007||Viu
I_STDBOOL|5.015003|5.015003|Vn
I_STDINT|5.021004|5.021004|Vn
is_THREE_CHAR_FOLD_HEAD_latin1_safe|5.031007||Viu
is_THREE_CHAR_FOLD_HEAD_utf8_safe|5.031007||Viu
is_THREE_CHAR_FOLD_latin1_safe|5.031007||Viu
is_THREE_CHAR_FOLD_utf8_safe|5.031007||Viu
IS_TRIE_AC|5.009005||Viu
isUNICODE_POSSIBLY_PROBLEMATIC|5.035004||Viu
_is_uni_FOO|5.017008||cVu
_is_uni_perl_idcont|5.017008||cVu
_is_uni_perl_idstart|5.017007||cVu
isUPPER|5.003007|5.003007|p
isUPPER_A|5.013006|5.003007|p
isUPPER_L1|5.013006|5.003007|p
isUPPER_LC|5.004000|5.004000|
isUPPER_LC_utf8|5.006000||Viu
isUPPER_LC_utf8_safe|5.025009|5.006000|p
isUPPER_LC_uvchr|5.007001|5.007001|
isUPPER_uni|5.006000||Viu
isUPPER_utf8|5.031005|5.031005|
isUPPER_utf8_safe|5.025009|5.006000|p
isUPPER_uvchr|5.023009|5.006000|p
is_utf8_char|5.006000|5.006000|dn
IS_UTF8_CHAR|5.009003||Viu
isUTF8_CHAR|5.021001|5.006001|pn
is_utf8_char_buf|5.015008|5.015008|n
isUTF8_CHAR_flags|5.025005|5.025005|n
is_utf8_char_helper_|5.035004||cVnu
is_utf8_common|5.009003||Viu
is_utf8_FF_helper_|5.035004||cVnu
is_utf8_fixed_width_buf_flags|5.025006|5.025006|n
is_utf8_fixed_width_buf_loc_flags|5.025006|5.025006|n
is_utf8_fixed_width_buf_loclen_flags|5.025006|5.025006|n
_is_utf8_FOO|5.031006||cVu
is_utf8_invariant_string|5.025005|5.011000|pn
is_utf8_invariant_string_loc|5.027001|5.027001|n
is_utf8_non_invariant_string|5.027007||cVni
is_utf8_overlong|5.035004||Vniu
_is_utf8_perl_idcont|5.031006||cVu
_is_utf8_perl_idstart|5.031006||cVu
isUTF8_POSSIBLY_PROBLEMATIC|5.023003||Viu
is_utf8_string|5.006001|5.006001|n
is_utf8_string_flags|5.025006|5.025006|n
is_utf8_string_loc|5.008001|5.008001|n
is_utf8_string_loc_flags|5.025006|5.025006|n
is_utf8_string_loclen|5.009003|5.009003|n
is_utf8_string_loclen_flags|5.025006|5.025006|n
is_utf8_valid_partial_char|5.025005|5.025005|n
is_utf8_valid_partial_char_flags|5.025005|5.025005|n
is_VERTWS_cp_high|5.017006||Viu
is_VERTWS_high|5.017006||Viu
isVERTWS_uni|5.017006||Viu
isVERTWS_utf8|5.017006||Viu
isVERTWS_utf8_safe|5.025009||Viu
isVERTWS_uvchr|5.023009||Viu
isWARNf_on|5.006001||Viu
isWARN_on|5.006000||Viu
isWARN_ONCE|5.006000||Viu
isWB|5.021009||Viu
isWORDCHAR|5.013006|5.003007|p
isWORDCHAR_A|5.013006|5.003007|p
isWORDCHAR_L1|5.013006|5.003007|p
isWORDCHAR_lazy_if_safe|5.025009||Viu
isWORDCHAR_LC|5.017007|5.004000|p
isWORDCHAR_LC_utf8|5.017007||Viu
isWORDCHAR_LC_utf8_safe|5.025009|5.006000|p
isWORDCHAR_LC_uvchr|5.017007|5.017007|
isWORDCHAR_uni|5.017006||Viu
isWORDCHAR_utf8|5.031005|5.031005|
isWORDCHAR_utf8_safe|5.025009|5.006000|p
isWORDCHAR_uvchr|5.023009|5.006000|p
isXDIGIT|5.006000|5.003007|p
isXDIGIT_A|5.013006|5.003007|p
is_XDIGIT_cp_high|5.017006||Viu
is_XDIGIT_high|5.017006||Viu
isXDIGIT_L1|5.013006|5.003007|p
isXDIGIT_LC|5.017007|5.003007|p
isXDIGIT_LC_utf8|5.017007||Viu
isXDIGIT_LC_utf8_safe|5.025009|5.006000|p
isXDIGIT_LC_uvchr|5.017007|5.017007|
isXDIGIT_uni|5.006000||Viu
isXDIGIT_utf8|5.031005|5.031005|
isXDIGIT_utf8_safe|5.025009|5.006000|p
isXDIGIT_uvchr|5.023009|5.006000|p
is_XPERLSPACE_cp_high|5.017006||Viu
is_XPERLSPACE_high|5.017006||Viu
I_SYS_DIR|5.003007|5.003007|Vn
I_SYS_FILE|5.003007|5.003007|Vn
I_SYS_IOCTL|5.003007|5.003007|Vn
I_SYSLOG|5.006000|5.006000|Vn
I_SYS_MOUNT|5.023005|5.023005|Vn
I_SYS_PARAM|5.003007|5.003007|Vn
I_SYS_POLL|5.010001|5.010001|Vn
I_SYS_RESOURCE|5.003007|5.003007|Vn
I_SYS_SELECT|5.003007|5.003007|Vn
I_SYS_STAT|5.003007|5.003007|Vn
I_SYS_STATFS|5.023005|5.023005|Vn
I_SYS_STATVFS|5.023005|5.023005|Vn
I_SYS_TIME|5.003007|5.003007|Vn
I_SYS_TIMES|5.003007|5.003007|Vn
I_SYS_TYPES|5.003007|5.003007|Vn
I_SYSUIO|5.006000|5.006000|Vn
I_SYS_UN|5.003007|5.003007|Vn
I_SYSUTSNAME|5.006000|5.006000|Vn
I_SYS_VFS|5.023005|5.023005|Vn
I_SYS_WAIT|5.003007|5.003007|Vn
items||5.003007|
I_TERMIOS|5.003007|5.003007|Vn
I_TIME|5.003007|5.003007|Vn

ppport.h  view on Meta::CPAN

magic_setutf8|5.008001||Viu
magic_setuvar|5.003007||Viu
magic_setvec|5.003007||Viu
magic_sizepack|5.005000||Viu
magic_wipepack|5.003007||Viu
make_exactf_invlist|5.031006||Viu
make_matcher|5.027008||Viu
make_trie|5.009002||Viu
malloc|5.003007||Vn
MALLOC_CHECK_TAINT2|5.008001||Viu
MALLOC_CHECK_TAINT|5.008001||Viu
malloced_size|5.005000||Vniu
malloc_good_size|5.010001||Vniu
MALLOC_INIT|5.005000||Viu
MALLOC_OVERHEAD|5.006000||Viu
Malloc_t|5.003007|5.003007|Vn
MALLOC_TERM|5.005000||Viu
MALLOC_TOO_LATE_FOR|5.008001||Viu
MARK|5.003007|5.003007|
MARKPOINT|5.009005||Viu
MARKPOINT_next|5.009005||Viu
MARKPOINT_next_fail|5.009005||Viu
MARKPOINT_next_fail_t8|5.035004||Viu
MARKPOINT_next_fail_t8_p8|5.033003||Viu
MARKPOINT_next_fail_t8_pb|5.033003||Viu
MARKPOINT_next_fail_tb|5.035004||Viu
MARKPOINT_next_fail_tb_p8|5.033003||Viu
MARKPOINT_next_fail_tb_pb|5.033003||Viu
MARKPOINT_next_t8|5.035004||Viu
MARKPOINT_next_t8_p8|5.033003||Viu
MARKPOINT_next_t8_pb|5.033003||Viu
MARKPOINT_next_tb|5.035004||Viu
MARKPOINT_next_tb_p8|5.033003||Viu
MARKPOINT_next_tb_pb|5.033003||Viu
MARKPOINT_t8|5.035004||Viu
MARKPOINT_t8_p8|5.033003||Viu
MARKPOINT_t8_pb|5.033003||Viu
MARKPOINT_tb|5.035004||Viu
MARKPOINT_tb_p8|5.033003||Viu
MARKPOINT_tb_pb|5.033003||Viu
markstack_grow|5.021001|5.021001|u
matcher_matches_sv|5.027008||Viu
MAX|5.025006||Viu
MAX_ANYOF_HRx_BYTE|5.031002||Viu
MAXARG|5.003007||Viu
MAX_CHARSET_NAME_LENGTH|5.013009||Viu
MAX_FEATURE_LEN|5.013010||Viu
MAX_FOLD_FROMS|5.029006||Viu
MAX_LEGAL_CP|5.029002||Viu
MAX_MATCHES|5.033005||Viu
MAXO|5.003007||Viu
MAXPATHLEN|5.006000||Viu
MAX_PORTABLE_UTF8_TWO_BYTE|5.011002||Viu
MAX_PRINT_A|5.033005||Viu
MAX_RECURSE_EVAL_NOCHANGE_DEPTH|5.009005||Viu
MAXSYSFD|5.003007||Viu
MAX_UNICODE_UTF8|5.027006||Viu
MAX_UNI_KEYWORD_INDEX|5.027011||Viu
MAX_UTF8_TWO_BYTE|5.019004||Viu
MAYBE_DEREF_GV|5.015003||Viu
MAYBE_DEREF_GV_flags|5.015003||Viu
MAYBE_DEREF_GV_nomg|5.015003||Viu
maybe_multimagic_gv|5.019004||Viu
mayberelocate|5.015006||Viu
MBLEN_LOCK|5.033005||Viu
MBLEN_UNLOCK|5.033005||Viu
MBOL|5.003007||Viu
MBOL_t8|5.035004||Viu
MBOL_t8_p8|5.033003||Viu
MBOL_t8_pb|5.033003||Viu
MBOL_tb|5.035004||Viu
MBOL_tb_p8|5.033003||Viu
MBOL_tb_pb|5.033003||Viu
MBTOWC_LOCK|5.033005||Viu
MBTOWC_UNLOCK|5.033005||Viu
MDEREF_ACTION_MASK|5.021007||Viu
MDEREF_AV_gvav_aelem|5.021007||Viu
MDEREF_AV_gvsv_vivify_rv2av_aelem|5.021007||Viu
MDEREF_AV_padav_aelem|5.021007||Viu
MDEREF_AV_padsv_vivify_rv2av_aelem|5.021007||Viu
MDEREF_AV_pop_rv2av_aelem|5.021007||Viu
MDEREF_AV_vivify_rv2av_aelem|5.021007||Viu
MDEREF_FLAG_last|5.021007||Viu
MDEREF_HV_gvhv_helem|5.021007||Viu
MDEREF_HV_gvsv_vivify_rv2hv_helem|5.021007||Viu
MDEREF_HV_padhv_helem|5.021007||Viu
MDEREF_HV_padsv_vivify_rv2hv_helem|5.021007||Viu
MDEREF_HV_pop_rv2hv_helem|5.021007||Viu
MDEREF_HV_vivify_rv2hv_helem|5.021007||Viu
MDEREF_INDEX_const|5.021007||Viu
MDEREF_INDEX_gvsv|5.021007||Viu
MDEREF_INDEX_MASK|5.021007||Viu
MDEREF_INDEX_none|5.021007||Viu
MDEREF_INDEX_padsv|5.021007||Viu
MDEREF_MASK|5.021007||Viu
MDEREF_reload|5.021007||Viu
MDEREF_SHIFT|5.021007||Viu
measure_struct|5.007003||Viu
MEM_ALIGNBYTES|5.003007|5.003007|Vn
memBEGINPs|5.027006||Viu
memBEGINs|5.027006||Viu
MEMBER_TO_FPTR|5.006000||Viu
memCHRs|5.031008|5.003007|p
mem_collxfrm|5.003007||dViu
_mem_collxfrm|5.025002||Viu
memENDPs|5.027006||Viu
memENDs|5.027006||Viu
memEQ|5.004000|5.003007|p
memEQs|5.009005|5.003007|p
memGE|5.025005||Viu
memGT|5.025005||Viu
memLE|5.025005||Viu
MEM_LOG_ALLOC|5.009003||Viu
mem_log_alloc|5.024000||Vniu
mem_log_common|5.010001||Vniu
MEM_LOG_DEL_SV|||Viu
MEM_LOG_FREE|5.009003||Viu
mem_log_free|5.024000||Vniu
MEM_LOG_NEW_SV|||Viu
MEM_LOG_REALLOC|5.009003||Viu
mem_log_realloc|5.024000||Vniu

ppport.h  view on Meta::CPAN

mro_set_mro|||u
mro_set_private_data|||
msbit_pos32|5.035003||cVnu
msbit_pos|5.035004||Viu
msbit_pos64|5.035003||cVnu
msbit_pos_uintmax|5.035003||Viu
MSPAGAIN|5.003007||Viu
MSVC_DIAG_IGNORE|5.029010||Viu
MSVC_DIAG_IGNORE_DECL|5.029010||Viu
MSVC_DIAG_IGNORE_STMT|5.029010||Viu
MSVC_DIAG_RESTORE|5.029010||Viu
MSVC_DIAG_RESTORE_DECL|5.029010||Viu
MSVC_DIAG_RESTORE_STMT|5.029010||Viu
mul128|5.005000||Viu
MULTICALL|5.009003|5.009003|
multiconcat_stringify|5.027006||cViu
multideref_stringify|5.021009||cViu
MULTILINE_PAT_MOD|5.009005||Viu
MULTIPLICITY|5.006000|5.006000|Vn
MUTABLE_AV|5.010001|5.003007|p
MUTABLE_CV|5.010001|5.003007|p
MUTABLE_GV|5.010001|5.003007|p
MUTABLE_HV|5.010001|5.003007|p
MUTABLE_IO|5.010001|5.003007|p
MUTABLE_PTR|5.010001|5.003007|p
MUTABLE_SV|5.010001|5.003007|p
MUTEX_DESTROY|5.005000||Viu
MUTEX_INIT|5.005000||Viu
MUTEX_INIT_NEEDS_MUTEX_ZEROED|5.005003||Viu
MUTEX_LOCK|5.005000||Viu
MUTEX_UNLOCK|5.005000||Viu
mXPUSHi|5.009002|5.003007|p
mXPUSHn|5.009002|5.003007|p
mXPUSHp|5.009002|5.003007|p
mXPUSHs|5.010001|5.003007|p
mXPUSHu|5.009002|5.003007|p
my|5.011000||Viu
my_atof2|5.029000||cVu
my_atof3|5.029000||cVu
my_atof|5.006000|5.006000|
my_attrs|5.006000||Viu
my_binmode|5.006000||Viu
my_bytes_to_utf8|5.021009||Vniu
my_chsize|5.003007||Vu
my_clearenv|5.009003||Viu
MY_CXT|5.009000|5.009000|p
MY_CXT_CLONE|5.009002|5.009000|p
MY_CXT_INDEX|5.009005||Viu
MY_CXT_INIT|5.009000|5.009000|p
MY_CXT_INIT_ARG|5.013005||Viu
MY_CXT_INIT_INTERP|5.009003||Viu
my_cxt_init|||u
my_dirfd|5.009005|5.009005|nu
my_exit|5.003007|5.003007|
my_exit_jump|5.005000||Viu
my_failure_exit|5.004000|5.004000|u
my_fflush_all|5.006000|5.006000|u
my_fork|5.007003|5.007003|nu
my_kid|5.006000||Viu
my_lstat|5.013003||Viu
my_lstat_flags|5.013003||cViu
my_memrchr|5.027006||Vniu
my_mkostemp_cloexec|||niu
my_mkostemp|||niu
my_mkstemp_cloexec|||niu
my_mkstemp|||niu
my_nl_langinfo|5.027006||Vniu
my_pclose|5.003007|5.003007|u
my_popen|5.003007|5.003007|u
my_popen_list|5.007001|5.007001|u
my_setenv|5.003007|5.003007|
my_snprintf|5.009004||pvVn
my_socketpair|5.007003|5.007003|nu
my_sprintf|5.009003|5.003007|pdn
my_stat|5.013003||Viu
my_stat_flags|5.013003||cViu
my_strerror|5.021001||Viu
my_strftime|5.007002||V
my_strlcat|5.009004|5.003007|pn
my_strlcpy|5.009004|5.003007|pn
my_strnlen|5.027006|5.003007|pn
my_strtod|5.029010|5.029010|n
my_unexec|5.003007||Viu
my_vsnprintf|5.009004|5.009004|n
N0|5.029001||Viu
N10|5.029001||Viu
N11|5.029001||Viu
N1|5.029001||Viu
N2|5.029001||Viu
N3|5.029001||Viu
N4|5.029001||Viu
N5|5.029001||Viu
N6|5.029001||Viu
N7|5.029001||Viu
N8|5.029001||Viu
N9|5.029001||Viu
NAN_COMPARE_BROKEN|5.021005||Viu
NANYOFM|5.029005||Viu
NANYOFM_t8|5.035004||Viu
NANYOFM_t8_p8|5.033003||Viu
NANYOFM_t8_pb|5.033003||Viu
NANYOFM_tb|5.035004||Viu
NANYOFM_tb_p8|5.033003||Viu
NANYOFM_tb_pb|5.033003||Viu
NATIVE8_TO_UNI|5.011000||Viu
NATIVE_BYTE_IS_INVARIANT|5.019004||Viu
NATIVE_SKIP|5.019004||Viu
NATIVE_TO_ASCII|5.007001||Viu
NATIVE_TO_I8|5.015006||Viu
NATIVE_TO_LATIN1|5.019004|5.003007|p
NATIVE_TO_NEED|5.019004||dcVnu
NATIVE_TO_UNI|5.007001|5.003007|p
NATIVE_TO_UTF|5.007001||Viu
NATIVE_UTF8_TO_I8|5.019004||Viu
nBIT_MASK|5.033001||Viu
nBIT_UMAX|5.033001||Viu
NBOUND|5.003007||Viu
NBOUNDA|5.013009||Viu
NBOUNDA_t8|5.035004||Viu
NBOUNDA_t8_p8|5.033003||Viu
NBOUNDA_t8_pb|5.033003||Viu
NBOUNDA_tb|5.035004||Viu
NBOUNDA_tb_p8|5.033003||Viu
NBOUNDA_tb_pb|5.033003||Viu
NBOUNDL|5.004000||Viu
NBOUNDL_t8|5.035004||Viu
NBOUNDL_t8_p8|5.033003||Viu
NBOUNDL_t8_pb|5.033003||Viu
NBOUNDL_tb|5.035004||Viu
NBOUNDL_tb_p8|5.033003||Viu
NBOUNDL_tb_pb|5.033003||Viu
NBOUND_t8|5.035004||Viu
NBOUND_t8_p8|5.033003||Viu
NBOUND_t8_pb|5.033003||Viu
NBOUND_tb|5.035004||Viu
NBOUND_tb_p8|5.033003||Viu
NBOUND_tb_pb|5.033003||Viu
NBOUNDU|5.013009||Viu
NBOUNDU_t8|5.035004||Viu
NBOUNDU_t8_p8|5.033003||Viu
NBOUNDU_t8_pb|5.033003||Viu
NBOUNDU_tb|5.035004||Viu
NBOUNDU_tb_p8|5.033003||Viu
NBOUNDU_tb_pb|5.033003||Viu
NBSP_NATIVE|5.021001||Viu
NBSP_UTF8|5.021001||Viu
NDBM_H_USES_PROTOTYPES|5.032001|5.032001|Vn
NDEBUG|5.021007||Viu
need_utf8|5.009003||Vniu
NEED_VA_COPY|5.007001|5.007001|Vn
NEGATIVE_INDICES_VAR|5.008001||Viu
Netdb_hlen_t|5.005000|5.005000|Vn
Netdb_host_t|5.005000|5.005000|Vn
Netdb_name_t|5.005000|5.005000|Vn
Netdb_net_t|5.005000|5.005000|Vn
NETDB_R_OBSOLETE|5.008000||Viu
New|5.003007||Viu
newANONATTRSUB|5.006000|5.006000|u
newANONHASH|5.003007|5.003007|u
newANONLIST|5.003007|5.003007|u
newANONSUB|5.003007|5.003007|u
newASSIGNOP|5.003007|5.003007|
newATTRSUB|5.006000|5.006000|
newATTRSUB_x|5.019008||cVi
newAV|5.003007|5.003007|
newAV_alloc_x|5.035001|5.035001|
newAV_alloc_xz|5.035001|5.035001|
newAVREF|5.003007|5.003007|u
newBINOP|5.003007|5.003007|
new_body_allocated|||Viu
new_body_from_arena|||Viu
Newc|5.003007||Viu
new_collate|5.006000||Viu
newCONDOP|5.003007|5.003007|
new_constant|||iu
newCONSTSUB|5.004005|5.003007|p
newCONSTSUB_flags|5.015006|5.015006|
new_ctype|5.006000||Viu
newCVREF|5.003007|5.003007|u
newDEFEROP|5.035004|5.035004|x
newDEFSVOP|5.021006|5.021006|
newFORM|5.003007|5.003007|u
newFOROP|5.013007|5.013007|
newGIVENOP|5.009003|5.009003|
newGIVWHENOP|5.027008||Viu
newGP|||xiu
newGVgen|5.003007|5.003007|u
newGVgen_flags|5.015004|5.015004|u
newGVOP|5.003007|5.003007|
newGVREF|5.003007|5.003007|u
new_he|5.005000||Viu
newHV|5.003007|5.003007|
newHVhv|5.005000|5.005000|u
newHVREF|5.003007|5.003007|u
_new_invlist|5.013010||cViu
_new_invlist_C_array|5.015008||cViu
newIO|5.003007|5.003007|u
newLISTOP|5.003007|5.003007|
newLOGOP|5.003007|5.003007|
new_logop|5.005000||Viu
newLOOPEX|5.003007|5.003007|
newLOOPOP|5.003007|5.003007|
newMETHOP|5.021005|5.021005|
newMETHOP_internal|5.021005||Viu
newMETHOP_named|5.021005|5.021005|
new_msg_hv|5.027009||Viu
newMYSUB|5.017004|5.017004|u
new_NOARENA|||Viu
new_NOARENAZ|||Viu
newNULLLIST|5.003007|5.003007|
new_numeric|5.006000||Viu
newOP|5.003007|5.003007|
NewOp|5.008001||Viu
newPADNAMELIST|5.021007|5.021007|xn
newPADNAMEouter|5.021007|5.021007|xn
newPADNAMEpvn|5.021007|5.021007|xn
newPADOP|5.006000||V
newPMOP|5.003007|5.003007|
newPROG|5.003007|5.003007|u
newPVOP|5.003007|5.003007|
newRANGE|5.003007|5.003007|
newRV|5.003007|5.003007|
newRV_inc|5.004000|5.003007|p
newRV_noinc|5.004000|5.003007|p
newSLICEOP|5.003007|5.003007|
new_stackinfo|5.005000|5.005000|u
newSTATEOP|5.003007|5.003007|
newSTUB|5.017001||Viu
newSUB|5.003007|5.003007|
newSV|5.003007|5.003007|
NEWSV|5.003007||Viu
newSVavdefelem|5.019004||Viu
newSVhek|5.009003|5.009003|
newSViv|5.003007|5.003007|
newSVnv|5.006000|5.003007|
newSVOP|5.003007|5.003007|
newSVpadname|5.017004|5.017004|x
newSVpv|5.003007|5.003007|
newSVpvf|5.004000||vV
newSVpvf_nocontext|5.006000||vVn
newSVpvn|5.004005|5.003007|p
newSVpvn_flags|5.010001|5.003007|p
newSVpvn_share|5.007001|5.003007|p
newSVpvn_utf8|5.010001|5.003007|p
newSVpvs|5.009003|5.003007|p
newSVpvs_flags|5.010001|5.003007|p
newSVpv_share|5.013006|5.013006|
newSVpvs_share|5.009003|5.003007|p
newSVREF|5.003007|5.003007|u
newSVrv|5.003007|5.003007|
newSVsv|5.003007|5.003007|
newSVsv_flags|5.029009|5.003007|p
newSVsv_nomg|5.029009|5.003007|p
newSV_type|5.009005|5.003007|p
newSV_type_mortal|||
newSVuv|5.006000|5.003007|p
new_SV|||Viu
newTRYCATCHOP|5.033007|5.033007|x
newUNOP|5.003007|5.003007|
newUNOP_AUX|5.021007|5.021007|
new_version|5.009000|5.009000|
NEW_VERSION|5.019008||Viu
new_warnings_bitfield|||xciu
newWHENOP|5.027008|5.027008|
newWHILEOP|5.013007|5.013007|
Newx|5.009003|5.003007|p
Newxc|5.009003|5.003007|p
new_XNV|||Viu
new_XPVMG|||Viu
new_XPVNV|||Viu
newXS|5.006000|5.006000|
newXS_deffile|5.021006||cViu
newXS_flags|5.009004|5.009004|xu
newXS_len_flags|5.015006||Vi
newXSproto|5.006000|5.006000|
Newxz|5.009003|5.003007|p
Newz|5.003007||Viu
nextargv|5.003007||Viu
nextchar|5.005000||Viu
NEXT_LINE_CHAR|5.007003||Viu
NEXT_OFF|5.005000||Viu
NEXTOPER|5.003007||Viu
next_symbol|5.007003||Viu
ninstr|5.003007|5.003007|n
NL_LANGINFO_LOCK|5.033005||Viu
NL_LANGINFO_UNLOCK|5.033005||Viu
NOARENA|||Viu
no_bareword_allowed|5.005004||Viu
no_bareword_filehandle|5.033006||Viu
NOCAPTURE_PAT_MOD|5.021008||Viu
NOCAPTURE_PAT_MODS|5.021008||Viu
NODE_ALIGN|5.005000||Viu
NODE_ALIGN_FILL|5.005000||Viu
NODE_STEP_REGNODE|5.005000||Viu
NODE_SZ_STR|5.006000||Viu
NO_ENV_ARRAY_IN_MAIN|5.009004||Viu
NOEXPR|5.027010||Viu
NofAMmeth|5.003007||Viu
no_fh_allowed|5.003007||Viu
NOLINE|5.003007||Viu
NO_LOCALE|5.007000||Viu
NONDESTRUCT_PAT_MOD|5.013002||Viu
NONDESTRUCT_PAT_MODS|5.013002||Viu
NON_OTHER_COUNT|5.033005||Viu
NONV|||Viu
no_op|5.003007||Viu
NOOP|5.005000|5.003007|p
noperl_die|5.021006||vVniu
NORETURN_FUNCTION_END|5.009003||Viu
NORMAL|5.003007||Viu
NOSTR|5.027010||Viu
NO_TAINT_SUPPORT|5.017006||Viu
not_a_number|5.005000||Viu
NOTE3|5.027001||Viu
NOTHING|5.003007||Viu
NOTHING_t8|5.035004||Viu
NOTHING_t8_p8|5.033003||Viu
NOTHING_t8_pb|5.033003||Viu
NOTHING_tb|5.035004||Viu
NOTHING_tb_p8|5.033003||Viu
NOTHING_tb_pb|5.033003||Viu
nothreadhook|5.008000|5.008000|
notify_parser_that_changed_to_utf8|5.025010||Viu
not_incrementable|5.021002||Viu
NOT_IN_PAD|5.005000||Viu
NOT_REACHED|5.019006|5.003007|poVnu
NPOSIXA|5.017003||Viu
NPOSIXA_t8|5.035004||Viu
NPOSIXA_t8_p8|5.033003||Viu
NPOSIXA_t8_pb|5.033003||Viu
NPOSIXA_tb|5.035004||Viu
NPOSIXA_tb_p8|5.033003||Viu
NPOSIXA_tb_pb|5.033003||Viu
NPOSIXD|5.017003||Viu

ppport.h  view on Meta::CPAN

OP_CHECK_MUTEX_UNLOCK|5.015008||Viu
OP_CLASS|5.013007|5.013007|
op_class|5.025010|5.025010|
op_clear|5.006000||cViu
OPCODE|5.003007||Viu
op_contextualize|5.013006|5.013006|
op_convert_list|5.021006|5.021006|
OP_DESC|5.007003|5.007003|
op_dump|5.006000|5.006000|
OPEN|5.003007||Viu
open|5.005000||Viu
opendir|5.005000||Viu
openn_cleanup|5.019010||Viu
openn_setup|5.019010||Viu
open_script|5.005000||Viu
OPEN_t8|5.035004||Viu
OPEN_t8_p8|5.033003||Viu
OPEN_t8_pb|5.033003||Viu
OPEN_tb|5.035004||Viu
OPEN_tb_p8|5.033003||Viu
OPEN_tb_pb|5.033003||Viu
OPERAND|5.003007||Viu
OPERANDl|5.031005||Viu
OPERANDs|5.031005||Viu
OPFAIL|5.009005||Viu
OPFAIL_t8|5.035004||Viu
OPFAIL_t8_p8|5.033003||Viu
OPFAIL_t8_pb|5.033003||Viu
OPFAIL_tb|5.035004||Viu
OPFAIL_tb_p8|5.033003||Viu
OPFAIL_tb_pb|5.033003||Viu
OPf_FOLDED|5.021007||Viu
OPf_KIDS|5.003007|5.003007|
OPf_KNOW|5.003007||Viu
OPf_LIST|5.003007||Viu
OPf_MOD|5.003007||Viu
OPf_PARENS|5.003007||Viu
op_free|5.003007|5.003007|
OP_FREED|5.017002||Viu
OPf_REF|5.003007||Viu
OPf_SPECIAL|5.003007||Viu
OPf_STACKED|5.003007||Viu
OPf_WANT|5.004000||Viu
OPf_WANT_LIST|5.004000||Viu
OPf_WANT_SCALAR|5.004000||Viu
OPf_WANT_VOID|5.004000||Viu
OP_GIMME|5.004000||Viu
OP_GIMME_REVERSE|5.010001||Viu
OpHAS_SIBLING|5.021007|5.003007|p
op_integerize|5.015003||Viu
OP_IS_DIRHOP|5.015003||Viu
OP_IS_FILETEST|5.006001||Viu
OP_IS_FILETEST_ACCESS|5.008001||Viu
OP_IS_INFIX_BIT|5.021009||Viu
OP_IS_NUMCOMPARE|5.015003||Viu
OP_IS_SOCKET|5.006001||Viu
OP_IS_STAT|5.031001||Viu
OpLASTSIB_set|5.021011|5.003007|p
op_linklist|5.013006|5.013006|
op_lvalue|5.013007|5.013007|x
op_lvalue_flags|||ciu
OP_LVALUE_NO_CROAK|5.015001||Viu
OpMAYBESIB_set|5.021011|5.003007|p
opmethod_stash|5.021007||Viu
OpMORESIB_set|5.021011|5.003007|p
OP_NAME|5.007003|5.007003|
op_null|5.007002|5.007002|
OPpALLOW_FAKE|5.015006||Viu
op_parent|5.025001|5.025001|n
OPpARG1_MASK|5.021004||Viu
OPpARG2_MASK|5.021004||Viu
OPpARG3_MASK|5.021004||Viu
OPpARG4_MASK|5.021004||Viu
OPpARGELEM_AV|5.025004||Viu
OPpARGELEM_HV|5.025004||Viu
OPpARGELEM_MASK|5.025004||Viu
OPpARGELEM_SV|5.025004||Viu
OPpASSIGN_BACKWARDS|5.003007||Viu
OPpASSIGN_COMMON_AGG|5.023002||Viu
OPpASSIGN_COMMON_RC1|5.023002||Viu
OPpASSIGN_COMMON_SCALAR|5.023002||Viu
OPpASSIGN_CV_TO_GV|5.009003||Viu
OPpASSIGN_TRUEBOOL|5.027003||Viu
OPpAVHVSWITCH_MASK|5.025006||Viu
OPpCONCAT_NESTED|5.027007||Viu
OPpCONST_BARE|5.003007||Viu
OPpCONST_ENTERED|5.003007||Viu
OPpCONST_NOVER|5.009003||Viu
OPpCONST_SHORTCIRCUIT|5.009001||Viu
OPpCONST_STRICT|5.005004||Viu
OPpCOREARGS_DEREF1|5.015003||Viu
OPpCOREARGS_DEREF2|5.015003||Viu
OPpCOREARGS_PUSHMARK|5.015003||Viu
OPpCOREARGS_SCALARMOD|5.015003||Viu
OPpDEFER_FINALLY|5.035008||Viu
OPpDEREF|5.004000||Viu
OPpDEREF_AV|5.003007||Viu
OPpDEREF_HV|5.003007||Viu
OPpDEREF_SV|5.004000||Viu
OPpDONT_INIT_GV|5.009003||Viu
OPpEARLY_CV|5.006000|5.006000|
OPpENTERSUB_AMPER|5.003007|5.003007|
OPpENTERSUB_DB|5.003007||Viu
OPpENTERSUB_HASTARG|5.006000||Viu
OPpENTERSUB_INARGS|5.006000||Viu
OPpENTERSUB_LVAL_MASK|5.015001||Viu
OPpENTERSUB_NOPAREN|5.005004||Viu
OPpEVAL_BYTES|5.015005||Viu
OPpEVAL_COPHH|5.015005||Viu
OPpEVAL_HAS_HH|5.009003||Viu
OPpEVAL_RE_REPARSING|5.017011||Viu
OPpEVAL_UNICODE|5.015005||Viu
OPpEXISTS_SUB|5.006000||Viu
OPpFLIP_LINENUM|5.003007||Viu
OPpFT_ACCESS|5.008001||Viu
OPpFT_AFTER_t|5.015008||Viu
OPpFT_STACKED|5.009001||Viu
OPpFT_STACKING|5.015001||Viu
OPpHINT_STRICT_REFS|5.021004||Viu
OPpHUSH_VMSISH|5.007003||Viu
OPpINDEX_BOOLNEG|5.027003||Viu

ppport.h  view on Meta::CPAN

PadnameLEN|5.017004|5.017004|x
PadnamelistARRAY|5.017004|5.017004|x
padnamelist_dup|5.021007||Vi
padnamelist_fetch|5.021007|5.021007|xn
padnamelist_free|||ciu
PadnamelistMAX|5.017004|5.017004|x
PadnamelistMAXNAMED|5.019003||Viu
PadnamelistREFCNT|5.021007|5.021007|x
PadnamelistREFCNT_dec|5.021007|5.021007|x
padnamelist_store|5.021007|5.021007|x
PadnameLVALUE|5.021006||Viu
PadnameLVALUE_on|5.021006||Viu
PadnameOURSTASH|5.017004||Vi
PadnameOURSTASH_set|5.021007||Viu
PadnameOUTER|5.017004||Vi
PadnamePROTOCV|5.021007||Viu
PadnamePV|5.017004|5.017004|x
PadnameREFCNT|5.021007|5.021007|x
PadnameREFCNT_dec|5.021007|5.021007|x
PadnameSV|5.017004|5.017004|x
PADNAMEt_LVALUE|5.021007||Viu
PADNAMEt_OUR|5.021007||Viu
PADNAMEt_OUTER|5.021007|5.021007|
PADNAMEt_STATE|5.021007||Viu
PADNAMEt_TYPED|5.021007||Viu
PadnameTYPE|5.017004||Vi
PadnameTYPE_set|5.021007||Viu
PadnameUTF8|5.017004|5.017004|x
pad_new|5.015001|5.015001|
padnew_CLONE|5.008001||Viu
padnew_SAVE|5.008001||Viu
padnew_SAVESUB|5.008001||Viu
pad_peg|5.009004||Viu
pad_push|5.008001||cVi
pad_reset|5.003007||Vi
PAD_RESTORE_LOCAL|5.008001||Vi
PAD_SAVE_LOCAL|5.008001||Vi
PAD_SAVE_SETNULLPAD|5.008001||Vi
PAD_SET_CUR|5.008001||Vi
PAD_SET_CUR_NOSAVE|5.008002||Vi
pad_setsv|5.008001||cV
PAD_SETSV|5.008001||Vi
pad_sv|5.003007||cV
PAD_SV|5.003007||Vi
PAD_SVl|5.008001||Vi
pad_swipe|5.003007||Vi
pad_tidy|5.015001|5.015001|x
panic_write2|5.008001||Viu
PARENT_FAKELEX_FLAGS|5.009005||Viu
PARENT_PAD_INDEX|5.009005||Viu
parse_arithexpr|5.013008|5.013008|x
parse_barestmt|5.013007|5.013007|x
parse_block|5.013007|5.013007|x
parse_body|5.006000||Viu
parse_fullexpr|5.013008|5.013008|x
parse_fullstmt|5.013005|5.013005|x
parse_gv_stash_name|5.019004||Viu
parse_ident|5.017010||Viu
parse_label|5.013007|5.013007|x
parse_listexpr|5.013008|5.013008|x
parse_lparen_question_flags|5.017009||Viu
PARSE_OPTIONAL|5.013007|5.013007|
parser_dup|5.009000|5.009000|u
parser_free|5.009005||Viu
parser_free_nexttoke_ops|5.017006||Viu
parse_stmtseq|5.013006|5.013006|x
parse_subsignature|5.031003|5.031003|x
parse_termexpr|5.013008|5.013008|x
parse_unicode_opts|5.008001||Viu
parse_uniprop_string|5.027011||Viu
PATCHLEVEL|5.003007||Viu
path_is_searchable|5.019001||Vniu
Pause|5.003007||Viu
pause|5.005000||Viu
pclose|5.003007||Viu
peep|5.003007||Viu
pending_ident|5.017004||Viu
PERL_ABS|5.008001|5.003007|p
Perl_acos|5.021004|5.021004|n
perl_alloc|5.003007|5.003007|n
PERL_ALLOC_CHECK|5.006000||Viu
perl_alloc_using|5.006000||Vnu
PERL_ANY_COW|5.017007||Viu
PERL_API_REVISION|5.006000||Viu
PERL_API_SUBVERSION|5.006000||Viu
PERL_API_VERSION|5.006000||Viu
PERL_API_VERSION_STRING|5.013004||Viu
PERL_ARENA_ROOTS_SIZE|5.009004||Viu
PERL_ARENA_SIZE|5.009003||Viu
PERL_ARGS_ASSERT_CROAK_XS_USAGE|||ponu
Perl_asin|5.021004|5.021004|n
Perl_assert|5.011000||Viu
perl_assert_ptr|5.027004||Viu
PERL_ASYNC_CHECK|5.006000|5.006000|
Perl_atan2|5.006000|5.006000|n
Perl_atan|5.021004|5.021004|n
Perl_atof2|5.006001||Viu
Perl_atof|5.006000||Viu
PERL_BCDVERSION||5.003007|onu
PERL_BISON_VERSION|5.023008||Viu
PERL_BITFIELD16|5.010001||Viu
PERL_BITFIELD32|5.010001||Viu
PERL_BITFIELD8|5.010001||Viu
PERL_CALLCONV|5.005002||Viu
PERL_CALLCONV_NO_RET|5.017002||Viu
Perl_ceil|5.009001|5.009001|n
PERL_CKDEF|5.006000||Viu
perl_clone|5.006000||Vn
perl_clone_using|5.006000||Vnu
PERL_CLZ_32|5.035003||Viu
PERL_CLZ_64|5.035003||Viu
perl_construct|5.003007|5.003007|n
PERL_COP_SEQMAX|5.013010||Viu
PERL_COPY_ON_WRITE|5.023001||Viu
Perl_cos|5.006000|5.006000|n
Perl_cosh|5.021004|5.021004|n
PERL_COUNT_MULTIPLIER|5.027007||Viu
PERL_CTZ_32|5.035003||Viu
PERL_CTZ_64|5.035003||Viu
Perl_custom_op_xop|5.019006||V
PERLDB_ALL|5.004002||Viu

ppport.h  view on Meta::CPAN

PL_curcopdb|5.005000||Viu
PL_curlocales|5.027009||Viu
PL_curpad|5.005000|5.005000|x
PL_curpm|5.005000||Viu
PL_curpm_under|5.025007||Viu
PL_curstack|5.005000||Viu
PL_curstackinfo|5.005000||Viu
PL_curstash|5.004005|5.003007|p
PL_curstname|5.005000||Viu
PL_custom_op_descs|5.007003||Viu
PL_custom_op_names|5.007003||Viu
PL_custom_ops|5.013007||Viu
PL_cv_has_eval|5.009000||Viu
PL_dbargs|5.005000||Viu
PL_DBcontrol|5.021005||Viu
PL_DBcv|5.005000||Viu
PL_DBgv|5.005000||Viu
PL_DBline|5.005000||Viu
PL_DBsignal|5.005000|5.003007|poVnu
PL_DBsignal_iv|5.021005||Viu
PL_DBsingle|5.005000||pV
PL_DBsingle_iv|5.021005||Viu
PL_DBsub|5.005000||pV
PL_DBtrace|5.005000||pV
PL_DBtrace_iv|5.021005||Viu
PL_debstash|5.005000|5.003007|poVnu
PL_debug|5.005000||Viu
PL_debug_pad|5.007003||Viu
PL_defgv|5.004005|5.003007|p
PL_def_layerlist|5.007003||Viu
PL_defoutgv|5.005000||Viu
PL_defstash|5.005000||Viu
PL_delaymagic|5.005000||Viu
PL_delaymagic_egid|5.015008||Viu
PL_delaymagic_euid|5.015008||Viu
PL_delaymagic_gid|5.015008||Viu
PL_delaymagic_uid|5.015008||Viu
PL_destroyhook|5.010000||Viu
PL_diehook|5.005000|5.003007|poVnu
PL_Dir|5.006000||Viu
PL_dirty|5.005000|5.003007|poVnu
PL_doswitches|5.005000||Viu
PL_dowarn|5.005000||pV
PL_dumper_fd|5.009003||Viu
PL_dumpindent|5.006000||Viu
PL_dump_re_max_len|5.023008||Viu
PL_efloatbuf|5.006000||Viu
PL_efloatsize|5.006000||Viu
PL_E_FORMAT_PRECISION|5.029000||Viu
PL_encoding|5.007003||Viu
PL_endav|5.005000||Viu
PL_Env|5.006000||Viu
PL_envgv|5.005000||Viu
PL_errgv|5.004005|5.003007|p
PL_error_count||5.003007|ponu
PL_errors|5.006000||Viu
PL_e_script|5.005000||Viu
PL_eval_root|5.005000||Viu
PL_evalseq|5.005000||Viu
PL_eval_start|5.005000||Viu
PL_exit_flags|5.006000|5.006000|
PL_exitlist|5.005000||Viu
PL_exitlistlen|5.005000||Viu
PL_expect||5.003007|ponu
PL_fdpid|5.005000||Viu
PL_filemode|5.005000||Viu
PL_firstgv|5.005000||Viu
PL_forkprocess|5.005000||Viu
PL_formtarget|5.005000||Viu
PL_GCB_invlist|5.021009||Viu
PL_generation|5.005000||Viu
PL_gensym|5.005000||Viu
PL_globalstash|5.005000||Viu
PL_globhook|5.015005||Viu
PL_hash_rand_bits|5.017010||Viu
PL_HASH_RAND_BITS_ENABLED|5.018000||Viu
PL_hash_rand_bits_enabled|5.018000||Viu
PL_hash_seed|5.033007||Viu
PL_hash_state|5.033007||Viu
PL_HasMultiCharFold|5.017005||Viu
PL_hexdigit||5.003007|pn
PL_hintgv|5.005000||Viu
PL_hints|5.005000|5.003007|poVnu
PL_hv_fetch_ent_mh|5.005000||Viu
PL_incgv|5.005000||Viu
PL_in_clean_all|5.005000||Viu
PL_in_clean_objs|5.005000||Viu
PL_in_eval|5.005000||Viu
PL_initav|5.005000||Viu
PL_in_load_module|5.008001||Viu
PL_in_my||5.003007|ponu
PL_in_my_stash||5.005000|ponu
PL_inplace|5.005000||Viu
PL_in_some_fold|5.029007||Viu
PL_internal_random_state|5.027004||Viu
PL_in_utf8_COLLATE_locale|5.025002||Viu
PL_in_utf8_CTYPE_locale|5.019009||Viu
PL_in_utf8_turkic_locale|5.029008||Viu
PL_isarev|5.009005||Viu
PL_keyword_plugin|5.011002|5.011002|x
PL_known_layers|5.007003||Viu
PL_langinfo_buf|5.027004||Viu
PL_langinfo_bufsize|5.027004||Viu
PL_lastfd|5.005000||Viu
PL_lastgotoprobe|5.005000||Viu
PL_last_in_gv|5.005000||Vi
PL_laststatval|5.005000|5.003007|poVnu
PL_laststype|5.005000||Viu
PL_Latin1|5.015008||Viu
PL_LB_invlist|5.023007||Viu
PL_lc_numeric_mutex_depth|5.027009||Viu
PL_lex_state||5.003007|ponu
PL_lex_stuff||5.003007|ponu
PL_linestr||5.003007|ponu
PL_LIO|5.006000||Viu
PL_locale_utf8ness|5.027009||Viu
PL_localizing|5.005000||Viu
PL_localpatches|5.005000||Viu
PL_lockhook|5.007003||Viu
PL_main_cv|5.005000||Viu
PL_main_root|5.005000||Viu

ppport.h  view on Meta::CPAN

REFFN_t8_pb|5.033003||Viu
REFFN_tb|5.035004||Viu
REFFN_tb_p8|5.033003||Viu
REFFN_tb_pb|5.033003||Viu
REFF_t8|5.035004||Viu
REFF_t8_p8|5.033003||Viu
REFF_t8_pb|5.033003||Viu
REFF_tb|5.035004||Viu
REFF_tb_p8|5.033003||Viu
REFF_tb_pb|5.033003||Viu
REFFU|5.013008||Viu
REFFUN|5.031001||Viu
REFFUN_t8|5.035004||Viu
REFFUN_t8_p8|5.033003||Viu
REFFUN_t8_pb|5.033003||Viu
REFFUN_tb|5.035004||Viu
REFFUN_tb_p8|5.033003||Viu
REFFUN_tb_pb|5.033003||Viu
REFFU_t8|5.035004||Viu
REFFU_t8_p8|5.033003||Viu
REFFU_t8_pb|5.033003||Viu
REFFU_tb|5.035004||Viu
REFFU_tb_p8|5.033003||Viu
REFFU_tb_pb|5.033003||Viu
REF_HE_KEY|5.009005||Viu
refkids|5.003007||Viu
REFN|5.031001||Viu
REFN_t8|5.035004||Viu
REFN_t8_p8|5.033003||Viu
REFN_t8_pb|5.033003||Viu
REFN_tb|5.035004||Viu
REFN_tb_p8|5.033003||Viu
REFN_tb_pb|5.033003||Viu
REF_t8|5.035004||Viu
REF_t8_p8|5.033003||Viu
REF_t8_pb|5.033003||Viu
REF_tb|5.035004||Viu
REF_tb_p8|5.033003||Viu
REF_tb_pb|5.033003||Viu
refto|5.005000||Viu
reg2Lanode|5.021005||Viu
reg|5.005000||Viu
reganode|5.005000||Viu
REG_ANY|5.006000||Viu
REG_ANY_t8|5.035004||Viu
REG_ANY_t8_p8|5.033003||Viu
REG_ANY_t8_pb|5.033003||Viu
REG_ANY_tb|5.035004||Viu
REG_ANY_tb_p8|5.033003||Viu
REG_ANY_tb_pb|5.033003||Viu
regatom|5.005000||Viu
regbranch|5.005000||Viu
reg_check_named_buff_matched|5.009005||Vniu
regclass|5.005000||Viu
regcppop|5.005000||Viu
regcppush|5.005000||Viu
regcp_restore|5.025006||Viu
regcurly|5.013010||cVniu
REG_CUTGROUP_SEEN|5.019009||Viu
regdump|5.005000|5.005000|u
regdump_extflags|5.009005||Viu
regdump_intflags|5.019002||Viu
regdupe_internal|5.009005||cVu
regexec_flags|5.005000||cVu
REGEX_SET|5.031010||Viu
regex_set_precedence|5.021010||Vniu
REGEX_SET_t8|5.035004||Viu
REGEX_SET_t8_p8|5.033003||Viu
REGEX_SET_t8_pb|5.033003||Viu
REGEX_SET_tb|5.035004||Viu
REGEX_SET_tb_p8|5.033003||Viu
REGEX_SET_tb_pb|5.033003||Viu
REG_EXTFLAGS_NAME_SIZE|5.020000||Viu
regfree_internal|5.009005||cVu
REG_GPOS_SEEN|5.019009||Viu
reghop3|5.007001||Vniu
reghop4|5.009005||Vniu
reghopmaybe3|5.007001||Vniu
reginclass|5.005000||Viu
REG_INFTY|5.004005||Viu
reginitcolors|5.006000||cVu
reginsert|5.005000||Viu
REG_INTFLAGS_NAME_SIZE|5.020000||Viu
register|5.003007||Viu
reg_la_NOTHING|||Viu
reg_la_OPFAIL|||Viu
REG_LB_SEEN|||Viu
REG_LOOKBEHIND_SEEN|5.019009||Viu
REG_MAGIC|5.006000||Viu
regmatch|5.005000||Viu
REGMATCH_STATE_MAX|5.009005||Viu
reg_named_buff|5.009005||cViu
reg_named_buff_all|5.009005||cVu
reg_named_buff_exists|5.009005||cVu
reg_named_buff_fetch|5.009005||cVu
reg_named_buff_firstkey|5.009005||cVu
reg_named_buff_iter|5.009005||cViu
reg_named_buff_nextkey|5.009005||cVu
reg_named_buff_scalar|5.009005||cVu
regnext|5.003007||cVu
reg_node|5.005000||Viu
regnode_guts|5.021005||Viu
regnode_guts_debug|||Viu
REGNODE_MAX|5.009004||Viu
REGNODE_SIMPLE|5.013002||Viu
REGNODE_VARIES|5.013002||Viu
reg_numbered_buff_fetch|5.009005||cViu
reg_numbered_buff_length|5.009005||cViu
reg_numbered_buff_store|5.009005||cViu
regpiece|5.005000||Viu
regpnode|5.031010||Viu
regprop|5.003007||Viu
reg_qr_package|5.009005||cViu
REG_RECURSE_SEEN|5.019009||Viu
regrepeat|5.005000||Viu
REG_RUN_ON_COMMENT_SEEN|5.019009||Viu
reg_scan_name|5.009005||Viu
reg_skipcomment|5.009005||Vniu
regtail|5.005000||Viu
regtail_study|5.009004||Viu
reg_temp_copy|5.009005||cViu
REG_TOP_LEVEL_BRANCHES_SEEN|5.019009||Viu
regtry|5.005000||Viu
REG_UNBOUNDED_QUANTIFIER_SEEN|5.019009||Viu

ppport.h  view on Meta::CPAN

RXp_MATCH_COPIED|5.010001||Viu
RXp_MATCH_COPIED_off|5.010001||Viu
RXp_MATCH_COPIED_on|5.010001||Viu
RXp_MATCH_COPY_FREE|5.027003||Viu
RXp_MATCH_TAINTED|5.010001||Viu
RXp_MATCH_TAINTED_off|5.027003||Viu
RXp_MATCH_TAINTED_on|5.017008||Viu
RXp_MATCH_UTF8|5.010001||Viu
RXp_MATCH_UTF8_off|5.027003||Viu
RXp_MATCH_UTF8_on|5.027003||Viu
RXp_MATCH_UTF8_set|5.027003||Viu
RXp_MINLEN|5.027003||Viu
RXp_MINLENRET|5.027003||Viu
RXp_NPARENS|5.027003||Viu
RXp_OFFS|5.027003||Viu
RXp_PAREN_NAMES|5.010001||Viu
RX_PRECOMP|5.010001||Viu
RX_PRECOMP_const|5.010001||Viu
RX_PRELEN|5.010001||Viu
RXp_SAVED_COPY|5.027003||Viu
RXp_SUBBEG|5.027003||Viu
RXp_SUBOFFSET|5.027003||Viu
RXp_ZERO_LEN|5.027003||Viu
RX_REFCNT|5.010001||Viu
rxres_free|5.004000||Viu
rxres_restore|5.004000||Viu
rxres_save|5.004000||Viu
RX_SAVED_COPY|5.011000||Viu
RX_SUBBEG|5.010001||Viu
RX_SUBCOFFSET|5.017004||Viu
RX_SUBLEN|5.010001||Viu
RX_SUBOFFSET|5.017004||Viu
RX_TAINT_on|5.017006||Viu
RX_UTF8|5.010001||Viu
RX_WRAPLEN|5.010001||Viu
RX_WRAPPED|5.010001||Viu
RX_WRAPPED_const|5.011000||Viu
RX_ZERO_LEN|5.019003||Viu
safecalloc|5.003007||Viu
Safefree|5.003007|5.003007|
safefree|5.003007||Viu
safemalloc|5.003007||Viu
saferealloc|5.003007||Viu
safesyscalloc|5.006000|5.006000|n
safesysfree|5.006000|5.006000|n
safesysmalloc|5.006000|5.006000|n
safesysrealloc|5.006000|5.006000|n
SAFE_TRIE_NODENUM|5.009002||Viu
same_dirent|5.003007||Viu
SANE_ERRSV|5.031003|5.031003|
SANY|5.003007||Viu
SANY_t8|5.035004||Viu
SANY_t8_p8|5.033003||Viu
SANY_t8_pb|5.033003||Viu
SANY_tb|5.035004||Viu
SANY_tb_p8|5.033003||Viu
SANY_tb_pb|5.033003||Viu
save_adelete|5.011000|5.011000|u
SAVEADELETE|5.011000||Viu
save_aelem|5.004005|5.004005|u
save_aelem_flags|5.011000|5.011000|u
save_alloc|5.006000|5.006000|u
save_aptr|5.003007|5.003007|
save_ary|5.003007|5.003007|
SAVEBOOL|5.008001|5.008001|
save_bool|5.008001||cVu
save_clearsv|5.003007||cVu
SAVECLEARSV|5.003007||Vi
SAVECOMPILEWARNINGS|5.009004||Viu
SAVECOMPPAD|5.006000||Vi
SAVECOPFILE|5.006000||Viu
SAVECOPFILE_FREE|5.006001||Viu
SAVECOPLINE|5.006000||Viu
SAVECOPSTASH_FREE|5.006001||Viu
SAVE_DEFSV|5.004005|5.003007|p
SAVEDELETE|5.003007|5.003007|
save_delete|5.003007||cVu
save_destructor|5.003007||cVu
SAVEDESTRUCTOR|5.006000|5.006000|
SAVEDESTRUCTOR_X|5.006000|5.006000|
save_destructor_x|5.006000||cVu
SAVE_ERRNO|5.010001||Vi
SAVEFEATUREBITS|5.031006||Viu
SAVEf_KEEPOLDELEM|5.011000||Viu
SAVEFREECOPHH|5.013007||Viu
SAVEFREEOP|5.010001|5.010001|
save_freeop|5.010001||cVu
SAVEFREEPADNAME|5.021007||Viu
SAVEFREEPV|5.003007|5.003007|
save_freepv|5.010001||cVu
SAVEFREESV|5.003007|5.003007|
save_freesv|5.010001||cVu
SAVEf_SETMAGIC|5.011000||Viu
SAVEGENERICPV|5.006001||Viu
save_generic_pvref|5.006001|5.006001|u
SAVEGENERICSV|5.005003||Viu
save_generic_svref|5.005003|5.005003|u
save_gp|5.004000|5.004000|
save_hash|5.003007|5.003007|
save_hdelete|5.011000|5.011000|u
SAVEHDELETE|5.011000||Viu
save_hek_flags|5.008000||Vniu
save_helem|5.004005|5.004005|u
save_helem_flags|5.011000|5.011000|u
SAVEHINTS|5.005000||Viu
save_hints|5.013005|5.013005|u
save_hptr|5.003007|5.003007|
SAVEI16|5.004000|5.004000|
save_I16|5.004000||cVu
SAVEI32|5.003007|5.003007|
save_I32|5.003007||cVu
SAVEI8|5.006000|5.006000|
save_I8|5.006000||cVu
SAVEINT|5.003007|5.003007|
save_int|5.003007||cVu
save_item|5.003007|5.003007|
SAVEIV|5.003007|5.003007|
save_iv|5.004000||cVu
save_lines|5.005000||Viu
save_list|5.003007|5.003007|d
SAVELONG|5.003007|5.003007|
save_long|5.003007||dcVu
save_magic_flags|5.019002||Viu
SAVE_MASK|5.013001||Viu
SAVEMORTALIZESV|5.007001|5.007001|
save_mortalizesv|5.010001||cVu
save_nogv|5.003007|5.003007|du
SAVEOP|5.005000||Viu
save_op|5.010001|5.010001|u
save_padsv_and_mortalize|5.010001|5.010001|u
SAVEPADSVANDMORTALIZE|5.010001||Viu
SAVEPADSV|||i
SAVEPARSER|5.009005||Viu
SAVEPPTR|5.003007|5.003007|
save_pptr|5.003007||cVu
save_pushi32ptr|5.013006|5.013006|u
save_pushptr|5.010001|5.010001|u
save_pushptri32ptr|5.010001||Viu
save_pushptrptr|5.013006|5.013006|u
savepv|5.003007|5.003007|
savepvn|5.003007|5.003007|
savepvs|5.009003|5.009003|
save_re_context|5.006000||cVu
save_scalar|5.003007|5.003007|
save_scalar_at|5.005000||Viu
save_set_svflags|5.009000|5.009000|u
SAVESETSVFLAGS|5.009000||Viu
savesharedpv|5.007003|5.007003|
SAVESHAREDPV|5.007003||Viu
savesharedpvn|5.009005|5.009005|
save_shared_pvref|5.007003|5.007003|u
savesharedpvs|5.013006|5.013006|
savesharedsvpv|5.013006|5.013006|
SAVESPTR|5.003007|5.003007|
save_sptr|5.003007||cVu
savestack_grow|5.003007|5.003007|u
savestack_grow_cnt|5.008001|5.008001|u
SAVESTACK_POS|5.004000|5.004000|
save_strlen|5.019004||cViu
SAVESTRLEN|5.035005|5.035005|
savesvpv|5.009002|5.009002|
save_svref|5.003007|5.003007|
SAVESWITCHSTACK|5.009002||Viu
SAVEt_ADELETE|5.011000||Viu
SAVEt_AELEM|5.004005||Viu
SAVEt_ALLOC|5.006000||Viu
SAVEt_APTR|5.003007||Viu
SAVEt_AV|5.003007||Viu
SAVEt_BOOL|5.008001||Viu
SAVEt_CLEARPADRANGE|5.017006||Viu
SAVEt_CLEARSV|5.003007||Viu
SAVEt_COMPILE_WARNINGS|5.009004||Viu
SAVEt_COMPPAD|5.006000||Viu
SAVEt_DELETE|5.003007||Viu
SAVEt_DESTRUCTOR|5.003007||Viu
SAVEt_DESTRUCTOR_X|5.006000||Viu
SAVEt_FREECOPHH|5.013007||Viu
SAVEt_FREEOP|5.003007||Viu
SAVEt_FREEPADNAME|5.021007||Viu
SAVEt_FREEPV|5.003007||Viu
SAVEt_FREESV|5.003007||Viu
SAVEt_GENERIC_PVREF|5.006001||Viu
SAVEt_GENERIC_SVREF|5.005003||Viu
SAVEt_GP|5.003007||Viu
SAVEt_GVSLOT|5.017007||Viu
SAVEt_GVSV|5.013005||Viu
SAVEt_HELEM|5.004005||Viu
SAVEt_HINTS|5.005000||Viu
SAVEt_HINTS_HH|5.033001||Viu
SAVEt_HPTR|5.003007||Viu
SAVEt_HV|5.003007||Viu
SAVEt_I16|5.004000||Viu
SAVEt_I32|5.003007||Viu
SAVEt_I32_SMALL|5.013001||Viu
SAVEt_I8|5.006000||Viu
SAVE_TIGHT_SHIFT|5.013001||Viu
SAVEt_INT|5.003007||Viu
SAVEt_INT_SMALL|5.013001||Viu
SAVEt_ITEM|5.003007||Viu
SAVEt_IV|5.003007||Viu
SAVEt_LONG|5.003007||Viu
SAVEt_MORTALIZESV|5.007001||Viu
SAVETMPS|5.003007|5.003007|
savetmps|||xu
SAVEt_NSTAB|5.003007||Viu
save_to_buffer|5.027004||Vniu
SAVEt_OP|5.005000||Viu
SAVEt_PADSV_AND_MORTALIZE|5.010001||Viu
SAVEt_PARSER|5.009005||Viu
SAVEt_PPTR|5.003007||Viu
SAVEt_READONLY_OFF|5.019002||Viu
SAVEt_REGCONTEXT|5.003007||Viu
SAVEt_SAVESWITCHSTACK|5.009002||Viu
SAVEt_SET_SVFLAGS|5.009000||Viu
SAVEt_SHARED_PVREF|5.007003||Viu
SAVEt_SPTR|5.003007||Viu
SAVEt_STACK_POS|5.004000||Viu
SAVEt_STRLEN|5.019004||Viu
SAVEt_STRLEN_SMALL|5.033005||Viu
SAVEt_SV|5.003007||Viu
SAVEt_SVREF|5.003007||Viu
SAVEt_TMPSFLOOR|5.023008||Viu
SAVEt_VPTR|5.006000||Viu
save_vptr|5.006000|5.006000|u
SAVEVPTR|5.006000||Viu
SAWAMPERSAND_LEFT|5.017004||Viu
SAWAMPERSAND_MIDDLE|5.017004||Viu
SAWAMPERSAND_RIGHT|5.017004||Viu
sawparens|5.003007||Viu
sb_dstr|5.003007||Viu
sb_iters|5.003007||Viu
sb_m|5.003007||Viu
sb_maxiters|5.003007||Viu
SBOL|5.003007||Viu
SBOL_t8|5.035004||Viu
SBOL_t8_p8|5.033003||Viu
SBOL_t8_pb|5.033003||Viu
SBOL_tb|5.035004||Viu
SBOL_tb_p8|5.033003||Viu
SBOL_tb_pb|5.033003||Viu
sb_orig|5.003007||Viu
SBOX32_CHURN_ROUNDS|5.027001||Viu
SBOX32_MAX_LEN|5.027001||Viu
SBOX32_MIX3|5.027001||Viu
SBOX32_MIX4|5.027001||Viu
SBOX32_SCRAMBLE32|5.027001||Viu
SBOX32_SKIP_MASK|5.027001||Viu
SBOX32_STATE_BITS|5.027001||Viu
SBOX32_STATE_BYTES|5.027001||Viu
SBOX32_STATE_WORDS|5.027001||Viu
SBOX32_STATIC_INLINE|5.027001||Viu
SBOX32_WARN2|5.027001||Viu
SBOX32_WARN3|5.027001||Viu
SBOX32_WARN4|5.027001||Viu
SBOX32_WARN5|5.027001||Viu
SBOX32_WARN6|5.027001||Viu
sb_rflags|5.006000||Viu
sb_rx|5.003007||Viu
sb_rxres|5.004000||Viu
sb_rxtainted|5.004000||Viu
sb_s|5.003007||Viu
sb_strend|5.003007||Viu
sb_targ|5.003007||Viu
scalar|5.003007||Viu
scalarboolean|5.005000||Viu
scalarkids|5.003007||Viu
scalar_mod_type|5.006000||Vniu
scalarvoid|5.003007||Viu
scan_bin|5.006000|5.006000|
scan_commit|5.005000||Viu
scan_const|5.003007||Viu
SCAN_DEF|5.003007||Viu
scan_formline|5.003007||Viu
scan_heredoc|5.003007||Viu
scan_hex|5.006000|5.003007|
scan_ident|5.003007||Viu
scan_inputsymbol|5.003007||Viu
scan_num|5.003007||cVu
scan_oct|5.006000|5.003007|
scan_pat|5.003007||Viu
SCAN_REPL|5.003007||Viu
scan_str|5.003007||xcViu
scan_subst|5.003007||Viu
SCAN_TR|5.003007||Viu
scan_trans|5.003007||Viu
scan_version|5.009001|5.009001|
SCAN_VERSION|5.019008||Viu
scan_vstring|5.009005|5.009005|u
scan_word|5.003007||xcViu
SCHED_YIELD|5.006000|5.006000|Vn
SCOPE_SAVES_SIGNAL_MASK|5.007001||Viu
search_const|5.010001||Viu
seed|5.009003|5.009003|u
seedDrand01|5.006000|5.006000|
SEEK_CUR|5.003007||Viu
seekdir|5.005000||Viu
SEEK_END|5.003007||Viu
SEEK_SET|5.003007||Viu
select|5.005000||Viu
Select_fd_set_t|5.003007|5.003007|Vn
SELECT_MIN_BITS|5.005003|5.005003|Vn
Semctl|5.004005||Viu
semun|5.006000||Viu
send|5.005000||Viu
sendto|5.005000||Viu
SEOL|5.003007||Viu
SEOL_t8|5.035004||Viu
SEOL_t8_p8|5.033003||Viu
SEOL_t8_pb|5.033003||Viu
SEOL_tb|5.035004||Viu
SEOL_tb_p8|5.033003||Viu
SEOL_tb_pb|5.033003||Viu
sequence_num|5.009003||Viu
set_ANYOF_arg|5.019005||Viu
set_ANYOF_SYNTHETIC|5.019009||Viu
setbuf|5.003007||Viu
set_caret_X|5.019006||Viu
set_context|5.006000|5.006000|nu
setdefout|5.011000|5.011000|
SETERRNO|5.003007||Vi
setfd_cloexec|5.027008||Vniu
setfd_cloexec_for_nonsysfd|5.027008||Viu
setfd_cloexec_or_inhexec_by_sysfdness|5.027008||Viu
setfd_inhexec|5.027008||Vniu
setfd_inhexec_for_sysfd|5.027008||Viu
setgid|5.005000||Viu
setgrent|5.009000||Viu
SETGRENT_R_HAS_FPTR|5.008000||Viu
SETGRENT_R_PROTO|5.008000|5.008000|Vn
sethostent|5.005000||Viu
SETHOSTENT_R_PROTO|5.008000|5.008000|Vn
SETi|5.003007||Viu
setjmp|5.005000||Viu
setlinebuf|5.005000||Viu
setlocale|5.009000||Viu
setlocale_debug_string|5.027002||Vniu
SETLOCALE_LOCK|5.033005||Viu
SETLOCALE_R_PROTO|5.008000|5.008000|Vn
SETLOCALE_UNLOCK|5.033005||Viu
SET_MARK_OFFSET|5.006000||Viu
setmode|5.005000||Viu
SETn|5.003007||Viu
setnetent|5.005000||Viu
SETNETENT_R_PROTO|5.008000|5.008000|Vn
set_numeric_radix|5.006000||Viu
SET_NUMERIC_STANDARD|5.004000||Viu
set_numeric_standard|5.006000||cViu
SET_NUMERIC_UNDERLYING|5.021010||Viu
set_numeric_underlying|5.027006||cViu
SETp|5.003007||Viu
set_padlist|5.021006||cVniu
setprotoent|5.005000||Viu
SETPROTOENT_R_PROTO|5.008000|5.008000|Vn
setpwent|5.009000||Viu
SETPWENT_R_HAS_FPTR|5.008000||Viu
SETPWENT_R_PROTO|5.008000|5.008000|Vn
set_regex_pv|5.029004||Viu
setregid|5.003007||Viu
setreuid|5.003007||Viu
SETs|5.003007||Viu
setservent|5.005000||Viu
SETSERVENT_R_PROTO|5.008000|5.008000|Vn
setsockopt|5.005000||Viu
setSTR_LEN|5.031005||Viu
SET_SVANY_FOR_BODYLESS_IV|5.023008||Viu
SET_SVANY_FOR_BODYLESS_NV|5.023008||Viu
SETTARG|5.003007||Viu
SET_THR|5.005000||Viu
SET_THREAD_SELF|5.005003||Viu
SETu|5.004000||Viu
setuid|5.005000||Viu
_setup_canned_invlist|5.019008||cViu
setvbuf|5.003007||Viu
share_hek|5.009003|5.009003|u
share_hek_flags|5.008000||Viu
share_hek_hek|5.009003||Viu
sharepvn|5.005000||Viu
SHARP_S_SKIP|5.007003||Viu
Shmat_t|5.003007|5.003007|Vn
SHORTSIZE|5.004000|5.004000|Vn
should_warn_nl|5.021001||Vniu
should_we_output_Debug_r|5.031011||Viu
SH_PATH|5.003007|5.003007|Vn
shutdown|5.005000||Viu
si_dup|5.007003|5.007003|u
S_IEXEC|5.006000||Viu
S_IFIFO|5.011000||Viu
S_IFMT|5.003007||Viu
SIGABRT|5.003007||Viu
sighandler1|5.031007||Vniu
sighandler3|5.031007||Vniu
sighandler|5.003007||Vniu
SIGILL|5.003007||Viu
Sigjmp_buf|5.003007|5.003007|Vn
Siglongjmp|5.003007|5.003007|
signal|5.005000||Viu
Signal_t|5.003007|5.003007|Vn
SIG_NAME|5.003007|5.003007|Vn
SIG_NUM|5.003007|5.003007|Vn
Sigsetjmp|5.003007|5.003007|
SIG_SIZE|5.007001|5.007001|Vn
simplify_sort|5.006000||Viu
single_1bit_pos32|5.035003||cVnu
single_1bit_pos64|5.035003||cVnu
SINGLE_PAT_MOD|5.009005||Viu
SIPHASH_SEED_STATE|5.027001||Viu
SIPROUND|5.017006||Viu
S_IREAD|5.006000||Viu
S_IRGRP|5.003007||Viu
S_IROTH|5.003007||Viu
S_IRUSR|5.003007||Viu
S_IRWXG|5.006000||Viu
S_IRWXO|5.006000||Viu
S_IRWXU|5.006000||Viu
S_ISBLK|5.003007||Viu
S_ISCHR|5.003007||Viu
S_ISDIR|5.003007||Viu
S_ISFIFO|5.003007||Viu
S_ISGID|5.003007||Viu
S_ISLNK|5.003007||Viu
S_ISREG|5.003007||Viu
S_ISSOCK|5.003007||Viu
S_ISUID|5.003007||Viu
SITEARCH|5.003007|5.003007|Vn
SITEARCH_EXP|5.003007|5.003007|Vn
SITELIB|5.003007|5.003007|Vn
SITELIB_EXP|5.003007|5.003007|Vn
SITELIB_STEM|5.006000|5.006000|Vn
S_IWGRP|5.003007||Viu
S_IWOTH|5.003007||Viu
S_IWRITE|5.006000||Viu
S_IWUSR|5.003007||Viu
S_IXGRP|5.003007||Viu
S_IXOTH|5.003007||Viu
S_IXUSR|5.003007||Viu
SIZE_ALIGN|5.005000||Viu
Size_t|5.003007|5.003007|Vn
Size_t_MAX|5.021003||Viu
Size_t_size|5.006000|5.006000|Vn
SKIP|5.009005||Viu
SKIP_next|5.009005||Viu
SKIP_next_fail|5.009005||Viu
SKIP_next_fail_t8|5.035004||Viu
SKIP_next_fail_t8_p8|5.033003||Viu
SKIP_next_fail_t8_pb|5.033003||Viu
SKIP_next_fail_tb|5.035004||Viu
SKIP_next_fail_tb_p8|5.033003||Viu
SKIP_next_fail_tb_pb|5.033003||Viu
SKIP_next_t8|5.035004||Viu
SKIP_next_t8_p8|5.033003||Viu
SKIP_next_t8_pb|5.033003||Viu
SKIP_next_tb|5.035004||Viu
SKIP_next_tb_p8|5.033003||Viu
SKIP_next_tb_pb|5.033003||Viu
skipspace_flags|5.019002||xcViu
SKIP_t8|5.035004||Viu
SKIP_t8_p8|5.033003||Viu
SKIP_t8_pb|5.033003||Viu
SKIP_tb|5.035004||Viu
SKIP_tb_p8|5.033003||Viu
SKIP_tb_pb|5.033003||Viu
skip_to_be_ignored_text|5.023004||Viu
Slab_Alloc|5.006000||cViu
Slab_Free|5.007003||cViu
Slab_to_ro|5.017002||Viu
Slab_to_rw|5.009005||Viu
sleep|5.005000||Viu
SLOPPYDIVIDE|5.003007||Viu
socket|5.005000||Viu
SOCKET_OPEN_MODE|5.008002||Viu
socketpair|5.005000||Viu
Sock_size_t|5.006000|5.006000|Vn
softref2xv|||iu
sortcv|5.009003||Viu
sortcv_stacked|5.009003||Viu
sortcv_xsub|5.009003||Viu
sortsv|5.007003|5.007003|
sortsv_flags|5.009003|5.009003|
sortsv_flags_impl|5.031011||Viu
SP|5.003007|5.003007|
space_join_names_mortal|5.009004||Viu
SPAGAIN|5.003007|5.003007|
S_PAT_MODS|5.009005||Viu
specialWARN|5.006000||Viu
SRAND48_R_PROTO|5.008000|5.008000|Vn
SRANDOM_R_PROTO|5.008000|5.008000|Vn
SRCLOSE|5.027008||Viu
SRCLOSE_t8|5.035004||Viu
SRCLOSE_t8_p8|5.033003||Viu
SRCLOSE_t8_pb|5.033003||Viu
SRCLOSE_tb|5.035004||Viu
SRCLOSE_tb_p8|5.033003||Viu
SRCLOSE_tb_pb|5.033003||Viu
SROPEN|5.027008||Viu
SROPEN_t8|5.035004||Viu
SROPEN_t8_p8|5.033003||Viu
SROPEN_t8_pb|5.033003||Viu
SROPEN_tb|5.035004||Viu
SROPEN_tb_p8|5.033003||Viu
SROPEN_tb_pb|5.033003||Viu
SS_ACCVIO|5.008001||Viu
SS_ADD_BOOL|5.017007||Viu
SS_ADD_DPTR|5.017007||Viu
SS_ADD_DXPTR|5.017007||Viu
SS_ADD_END|5.017007||Viu
SS_ADD_INT|5.017007||Viu
SS_ADD_IV|5.017007||Viu
SS_ADD_LONG|5.017007||Viu
SS_ADD_PTR|5.017007||Viu
SS_ADD_UV|5.017007||Viu
SS_BUFFEROVF|5.021009||Viu
ssc_add_range|5.019005||Viu
ssc_and|5.019005||Viu
ssc_anything|5.019005||Viu
ssc_clear_locale|5.019005||Vniu
ssc_cp_and|5.019005||Viu
ssc_finalize|5.019005||Viu
SSCHECK|5.003007||Viu
ssc_init|5.019005||Viu
ssc_intersection|5.019005||Viu
ssc_is_anything|5.019005||Vniu
ssc_is_cp_posixl_init|5.019005||Vniu
SSC_MATCHES_EMPTY_STRING|5.021004||Viu
ssc_or|5.019005||Viu
ssc_union|5.019005||Viu
SS_DEVOFFLINE|5.008001||Viu
ss_dup|5.007003|5.007003|u
SSGROW|5.008001||Viu
SS_IVCHAN|5.008001||Viu
SSize_t|5.003007|5.003007|Vn
SSize_t_MAX|5.019004||Viu
SS_MAXPUSH|5.017007||Viu
SSNEW|5.006000||Viu
SSNEWa|5.006000||Viu
SSNEWat|5.007001||Viu
SSNEWt|5.007001||Viu
SS_NOPRIV|5.021001||Viu
SS_NORMAL|5.008001||Viu
SSPOPBOOL|5.008001||Viu

ppport.h  view on Meta::CPAN

STORE_LC_NUMERIC_SET_TO_NEEDED_IN|5.031003|5.031003|
STORE_NUMERIC_SET_STANDARD|||piu
strBEGINs|5.027006||Viu
strEQ|5.003007|5.003007|
Strerror|5.003007||Viu
strerror|5.009000||Viu
STRERROR_R_PROTO|5.008000|5.008000|Vn
strGE|5.003007|5.003007|
strGT|5.003007|5.003007|
STRING|5.006000||Viu
STRINGIFY|5.003007|5.003007|Vn
STRINGl|5.031005||Viu
STRINGs|5.031005||Viu
strip_return|5.009003||Viu
strLE|5.003007|5.003007|
STR_LEN|5.006000||Viu
STRLEN|5.027001||Viu
STR_LENl|5.031005||Viu
STR_LENs|5.031005||Viu
strLT|5.003007|5.003007|
strNE|5.003007|5.003007|
strnEQ|5.003007|5.003007|
strnNE|5.003007|5.003007|
STR_SZ|5.006000||Viu
Strtod|5.029010|5.029010|n
Strtol|5.006000|5.006000|n
strtoll|5.006000||Viu
Strtoul|5.006000|5.006000|n
strtoull|5.006000||Viu
str_to_version|5.006000||cVu
StructCopy|5.003007|5.003007|V
STRUCT_OFFSET|5.004000||Viu
STRUCT_SV|5.007001||Viu
STR_WITH_LEN|5.009003|5.003007|pV
study_chunk|5.005000||Viu
sub_crush_depth|5.004000||Viu
sublex_done|5.005000||Viu
sublex_push|5.005000||Viu
sublex_start|5.005000||Viu
SUBST_TAINT_BOOLRET|5.013010||Viu
SUBST_TAINT_PAT|5.013010||Viu
SUBST_TAINT_REPL|5.013010||Viu
SUBST_TAINT_RETAINT|5.013010||Viu
SUBST_TAINT_STR|5.013010||Viu
SUBVERSION|5.003007||Viu
SUCCEED|5.003007||Viu
SUCCEED_t8|5.035004||Viu
SUCCEED_t8_p8|5.033003||Viu
SUCCEED_t8_pb|5.033003||Viu
SUCCEED_tb|5.035004||Viu
SUCCEED_tb_p8|5.033003||Viu
SUCCEED_tb_pb|5.033003||Viu
SUSPEND|5.005000||Viu
SUSPEND_t8|5.035004||Viu
SUSPEND_t8_p8|5.033003||Viu
SUSPEND_t8_pb|5.033003||Viu
SUSPEND_tb|5.035004||Viu
SUSPEND_tb_p8|5.033003||Viu
SUSPEND_tb_pb|5.033003||Viu
sv_2bool|5.013006||cV
sv_2bool_flags|5.013006||cV
sv_2bool_nomg|5.017002||Viu
sv_2cv|5.003007|5.003007|
sv_2io|5.003007|5.003007|
sv_2iuv_common|5.009004||Viu
sv_2iuv_non_preserve|5.007001||Viu
sv_2iv|5.009001||cVu
sv_2iv_flags|5.009001|5.009001|
sv_2mortal|5.003007|5.003007|
sv_2num|5.010000||xVi
sv_2nv|5.013001||Viu
sv_2nv_flags|5.013001|5.013001|
sv_2pv|5.005000||cVu
sv_2pvbyte|5.006000|5.003007|p
sv_2pvbyte_flags|5.031004|5.031004|u
sv_2pvbyte_nolen|5.009003||pcV
sv_2pv_flags|5.007002||pcV
sv_2pv_nolen|5.009003||pcV
sv_2pv_nomg|5.007002||Viu
sv_2pvutf8|5.006000|5.006000|
sv_2pvutf8_flags|5.031004|5.031004|u
sv_2pvutf8_nolen|5.009003||cV
sv_2uv|5.009001||pcVu
sv_2uv_flags|5.009001|5.009001|
sv_add_arena|5.003007||Vi
sv_add_backref|||iu
SvAMAGIC|5.003007||Viu
SvAMAGIC_off|5.003007|5.003007|nu
SvAMAGIC_on|5.003007|5.003007|nu
SvANY|5.003007||Viu
SvARENA_CHAIN_SET|||Viu
SvARENA_CHAIN|||Viu
sv_backoff|5.003007|5.003007|n
sv_bless|5.003007|5.003007|
sv_buf_to_ro|5.019008||Viu
sv_buf_to_rw|5.019008||Viu
SvCANCOW|5.017007||Viu
SvCANEXISTDELETE|5.011000||Viu
SV_CATBYTES|5.021005|5.021005|
sv_cat_decode|5.008001|5.008001|
sv_cathek|5.021004||Viu
sv_catpv|5.003007|5.003007|
sv_catpvf|5.004000||vV
sv_catpv_flags|5.013006|5.013006|
sv_catpvf_mg|5.004005||pvV
sv_catpvf_mg_nocontext|5.006000||pvVn
sv_catpvf_nocontext|5.006000||vVn
sv_catpv_mg|5.004005|5.003007|p
sv_catpvn|5.003007|5.003007|
sv_catpvn_flags|5.007002|5.007002|
sv_catpvn_mg|5.004005|5.003007|p
sv_catpvn_nomg|5.007002|5.003007|p
sv_catpvn_nomg_maybeutf8|5.017005||Viu
sv_catpvn_nomg_utf8_upgrade|5.017002||Viu
sv_catpv_nomg|5.013006|5.013006|
sv_catpvs|5.009003|5.003007|p
sv_catpvs_flags|5.013006|5.013006|
sv_catpvs_mg|5.013006|5.013006|
sv_catpvs_nomg|5.013006|5.013006|
sv_catsv|5.003007|5.003007|
sv_catsv_flags|5.007002|5.007002|
sv_catsv_mg|5.004005|5.003007|p
sv_catsv_nomg|5.007002|5.003007|p
SV_CATUTF8|5.021005|5.021005|
sv_catxmlpvs|5.013006||Viu
SV_CHECK_THINKFIRST|5.008001||Viu
SV_CHECK_THINKFIRST_COW_DROP|5.009000||Viu
sv_chop|5.003007|5.003007|
sv_clean_all|5.003007||Vi
sv_clean_objs|5.003007||Vi
sv_clear|5.003007|5.003007|
sv_cmp|5.003007|5.003007|
sv_cmp_flags|5.013006|5.013006|
sv_cmp_locale|5.004000|5.004000|
sv_cmp_locale_flags|5.013006|5.013006|
sv_collxfrm|5.013006||V
sv_collxfrm_flags|5.013006|5.013006|
SvCOMPILED|5.003007||Viu
SvCOMPILED_off|5.003007||Viu
SvCOMPILED_on|5.003007||Viu
SV_CONST|5.019002||Viu
SV_CONST_BINMODE|5.019002||Viu
SV_CONST_CLEAR|5.019002||Viu
SV_CONST_CLOSE|5.019002||Viu
SV_CONST_DELETE|5.019002||Viu
SV_CONST_DESTROY|5.019002||Viu
SV_CONST_EOF|5.019002||Viu
SV_CONST_EXISTS|5.019002||Viu
SV_CONST_EXTEND|5.019002||Viu
SV_CONST_FETCH|5.019002||Viu
SV_CONST_FETCHSIZE|5.019002||Viu
SV_CONST_FILENO|5.019002||Viu
SV_CONST_FIRSTKEY|5.019002||Viu
SV_CONST_GETC|5.019002||Viu
SV_CONST_NEXTKEY|5.019002||Viu
SV_CONST_OPEN|5.019002||Viu
SV_CONST_POP|5.019002||Viu
SV_CONST_PRINT|5.019002||Viu
SV_CONST_PRINTF|5.019002||Viu
SV_CONST_PUSH|5.019002||Viu
SV_CONST_READ|5.019002||Viu
SV_CONST_READLINE|5.019002||Viu
SV_CONST_RETURN|5.009003|5.003007|poVnu
SV_CONST_SCALAR|5.019002||Viu
SV_CONSTS_COUNT|5.019002||Viu
SV_CONST_SEEK|5.019002||Viu
SV_CONST_SHIFT|5.019002||Viu
SV_CONST_SPLICE|5.019002||Viu
SV_CONST_STORE|5.019002||Viu
SV_CONST_STORESIZE|5.019002||Viu
SV_CONST_TELL|5.019002||Viu
SV_CONST_TIEARRAY|5.019002||Viu
SV_CONST_TIEHANDLE|5.019002||Viu
SV_CONST_TIEHASH|5.019002||Viu
SV_CONST_TIESCALAR|5.019002||Viu
SV_CONST_UNSHIFT|5.019002||Viu
SV_CONST_UNTIE|5.019002||Viu
SV_CONST_WRITE|5.019002||Viu
sv_copypv|5.007003|5.007003|
sv_copypv_flags|5.017002|5.017002|
sv_copypv_nomg|5.017002|5.017002|
SV_COW_DROP_PV|5.008001|5.003007|p
SV_COW_OTHER_PVS|5.009005||Viu
SV_COW_REFCNT_MAX|5.017007||Viu
SV_COW_SHARED_HASH_KEYS|5.009005|5.003007|poVnu
SvCUR|5.003007|5.003007|
SvCUR_set|5.003007|5.003007|
sv_dec|5.003007|5.003007|
sv_dec_nomg|5.013002|5.013002|
sv_del_backref|5.006000||cViu
sv_derived_from|5.004000|5.004000|
sv_derived_from_pv|5.015004|5.015004|
sv_derived_from_pvn|5.015004|5.015004|
sv_derived_from_sv|5.015004|5.015004|
sv_derived_from_svpvn|5.031006||Viu
sv_destroyable|5.010000|5.010000|
SvDESTROYABLE|5.010000||Viu
sv_display|5.021002||Viu
SV_DO_COW_SVSETSV|5.009005||Viu
sv_does|5.009004|5.009004|
sv_does_pv|5.015004|5.015004|
sv_does_pvn|5.015004|5.015004|
sv_does_sv|5.015004|5.015004|
sv_dump|5.003007|5.003007|
sv_dup|5.007003|5.007003|u
sv_dup_common|5.013002||Viu
sv_dup_inc|5.013002|5.013002|u
sv_dup_inc_multiple|5.011000||Viu
SvEND|5.003007|5.003007|
SvEND_set|5.003007||Viu
SvENDx|5.003007||Viu
sv_eq|5.003007|5.003007|
sv_eq_flags|5.013006|5.013006|
sv_exp_grow|5.009003||Viu
SVf256|5.008001||Viu
SVf32|5.009002||Viu
SVf|5.006000|5.003007|p
SvFAKE|5.003007||Viu
SvFAKE_off|5.003007||Viu
SvFAKE_on|5.003007||Viu
SVf_AMAGIC|5.003007||Viu
SVfARG|5.009005|5.003007|p
SVf_BREAK|5.003007||Viu
SVf_FAKE|5.003007||Viu
SVf_IOK|5.003007||Viu
SVf_IsCOW|5.017006||Viu
SVf_IVisUV|5.006000||Viu
SvFLAGS|5.003007||Viu
SVf_NOK|5.003007||Viu
SVf_OK|5.003007||Viu
SVf_OOK|5.003007||Viu
sv_force_normal|5.006000|5.006000|
sv_force_normal_flags|5.007001|5.007001|
SV_FORCE_UTF8_UPGRADE|5.011000|5.011000|
SVf_POK|5.003007||Viu
SVf_PROTECT|5.021005||Viu
SVf_READONLY|5.003007||Viu
sv_free2|||xciu
sv_free|5.003007|5.003007|
sv_free_arenas|5.003007||Vi
SVf_ROK|5.003007||Viu
SVf_THINKFIRST|5.003007||Viu
SVf_UTF8|5.006000|5.003007|p
SvGAMAGIC|5.006001|5.006001|
sv_get_backrefs|5.021008|5.021008|xn
SvGETMAGIC|5.004005|5.003007|p
sv_gets|5.003007|5.003007|
SvGID|5.019001||Viu
SV_GMAGIC|5.007002|5.003007|p
SvGMAGICAL|5.003007||Viu
SvGMAGICAL_off|5.003007||Viu
SvGMAGICAL_on|5.003007||Viu
SvGROW|5.003007|5.003007|
sv_grow|5.003007||cV
Sv_Grow|5.003007||Viu
sv_grow_fresh|5.035006||cV
SvGROW_mutable|5.009003||Viu
SV_HAS_TRAILING_NUL|5.009004|5.003007|p
SV_IMMEDIATE_UNREF|5.007001|5.003007|p
SvIMMORTAL|5.004000||Viu
SvIMMORTAL_INTERP|5.027003||Viu
SvIMMORTAL_TRUE|5.027003||Viu
sv_inc|5.003007|5.003007|
sv_i_ncmp|5.009003||Viu
sv_i_ncmp_desc|5.031011||Viu
sv_inc_nomg|5.013002|5.013002|
sv_insert|5.003007|5.003007|
sv_insert_flags|5.010001|5.010001|
SvIOK|5.003007|5.003007|
SvIOK_nog|5.017002||Viu
SvIOK_nogthink|5.017002||Viu
SvIOK_notUV|5.006000|5.006000|
SvIOK_off|5.003007|5.003007|
SvIOK_on|5.003007|5.003007|
SvIOK_only|5.003007|5.003007|
SvIOK_only_UV|5.006000|5.006000|
SvIOKp|5.003007|5.003007|
SvIOKp_on|5.003007||Viu
SvIOK_UV|5.006000|5.006000|
sv_isa|5.003007|5.003007|
sv_isa_sv|5.031007|5.031007|x
SvIsBOOL|5.035004|5.035004|
SvIsCOW|5.008003|5.008003|
SvIsCOW_shared_hash|5.008003|5.008003|
SvIS_FREED|5.009003||Viu
sv_isobject|5.003007|5.003007|
SvIV|5.003007|5.003007|
sv_iv|5.005000||dcV
SvIV_nomg|5.009001|5.003007|p
SvIV_please|5.007001||Viu
SvIV_please_nomg|5.013002||Viu
SvIV_set|5.003007|5.003007|
SvIVX|5.003007|5.003007|
SvIVx|5.003007|5.003007|
SvIVXx|5.003007||Viu
sv_kill_backrefs|||xiu
sv_len|5.003007|5.003007|
SvLEN|5.003007|5.003007|
SvLEN_set|5.003007|5.003007|
sv_len_utf8|5.006000|5.006000|p
sv_len_utf8_nomg||5.006000|p
SvLENx|5.003007||Viu
SvLOCK|5.007003|5.007003|
sv_magic|5.003007|5.003007|
SvMAGIC|5.003007||Viu
SvMAGICAL|5.003007||Viu
SvMAGICAL_off|5.003007||Viu
SvMAGICAL_on|5.003007||Viu
sv_magicext|5.007003|5.007003|
sv_magicext_mglob|5.019002||cViu
sv_magic_portable||5.004000|pou
SvMAGIC_set|5.009003|5.003007|p
sv_mortalcopy|5.003007|5.003007|
sv_mortalcopy_flags|5.031001|5.003007|p
SV_MUTABLE_RETURN|5.009003|5.003007|poVnu
sv_ncmp|5.009003||Viu
sv_ncmp_desc|5.031011||Viu
sv_newmortal|5.003007|5.003007|
sv_newref|5.003007||cV
SvNIOK|5.003007|5.003007|
SvNIOK_nog|5.017002||Viu
SvNIOK_nogthink|5.017002||Viu
SvNIOK_off|5.003007|5.003007|
SvNIOKp|5.003007|5.003007|
SvNOK|5.003007|5.003007|
SvNOK_nog|5.017002||Viu
SvNOK_nogthink|5.017002||Viu
SvNOK_off|5.003007|5.003007|
SvNOK_on|5.003007|5.003007|
SvNOK_only|5.003007|5.003007|
SvNOKp|5.003007|5.003007|
SvNOKp_on|5.003007||Viu
sv_nolocking|5.031004|5.031004|d
sv_nosharing|5.007003|5.007003|
SV_NOSTEAL|5.009002|5.003007|p
sv_nounlocking|5.009004|5.009004|d
sv_numeq|5.035009|5.035009|
sv_numeq_flags|5.035009|5.035009|
sv_nv|5.005000||dcV
SvNV|5.006000|5.003007|
SvNV_nomg|5.013002|5.003007|p
SvNV_set|5.006000|5.003007|
SvNVX|5.006000|5.003007|
SvNVx|5.006000|5.003007|
SvNVXx|5.003007||Viu
SvOBJECT|5.003007||Viu
SvOBJECT_off|5.003007||Viu
SvOBJECT_on|5.003007||Viu
SvOK|5.003007|5.003007|
SvOK_off|5.003007||Viu
SvOK_off_exc_UV|5.006000||Viu
SvOKp|5.003007||Viu
sv_only_taint_gmagic|5.021010||Vniu
SvOOK|5.003007|5.003007|
SvOOK_off|5.003007|5.003007|
SvOOK_offset|5.011000|5.011000|
SvOOK_on|5.003007||Viu
sv_or_pv_len_utf8|5.017005||Viu
sv_or_pv_pos_u2b|5.019004||Viu
SvOURSTASH|5.009005||Viu
SvOURSTASH_set|5.009005||Viu
SvPADMY|5.003007||Viu
SvPADMY_on|5.003007||Viu
SVpad_OUR|5.006000||Viu
SvPAD_OUR|5.009004||Viu
SvPAD_OUR_on|5.009004||Viu
SvPADSTALE|5.009000||Viu
SvPADSTALE_off|5.009000||Viu
SvPADSTALE_on|5.009000||Viu
SVpad_STATE|5.009004||Viu
SvPAD_STATE|5.009004||Viu
SvPAD_STATE_on|5.009004||Viu
SvPADTMP|5.003007||Viu
SvPADTMP_off|5.003007||Viu
SvPADTMP_on|5.003007||Viu
SVpad_TYPED|5.007002||Viu
SvPAD_TYPED|5.009004||Viu
SvPAD_TYPED_on|5.009004||Viu
SVpav_REAL|5.009003||Viu
SVpav_REIFY|5.009003||Viu
SvPCS_IMPORTED|5.009005||Viu
SvPCS_IMPORTED_off|5.009005||Viu
SvPCS_IMPORTED_on|5.009005||Viu
SvPEEK|5.003007||Viu
sv_peek|5.005000|5.005000|u
SVpgv_GP|5.009005||Viu
SVphv_CLONEABLE|5.009003||Viu
SVphv_HASKFLAGS|5.008000||Viu
SVphv_LAZYDEL|5.003007||Viu
SVphv_SHAREKEYS|5.003007||Viu
SVp_IOK|5.003007||Viu
SVp_NOK|5.003007||Viu
SvPOK|5.003007|5.003007|
SvPOK_byte_nog|5.017002||Viu
SvPOK_byte_nogthink|5.017002||Viu
SvPOK_byte_pure_nogthink|5.017003||Viu
SvPOK_nog|5.017002||Viu
SvPOK_nogthink|5.017002||Viu
SvPOK_off|5.003007|5.003007|
SvPOK_on|5.003007|5.003007|
SvPOK_only|5.003007|5.003007|
SvPOK_only_UTF8|5.006000|5.006000|
SvPOK_or_cached_IV|||Viu
SvPOKp|5.003007|5.003007|
SvPOKp_on|5.003007||Viu
SvPOK_pure_nogthink|5.017003||Viu
SvPOK_utf8_nog|5.017002||Viu
SvPOK_utf8_nogthink|5.017002||Viu
SvPOK_utf8_pure_nogthink|5.017003||Viu
sv_pos_b2u|5.006000|5.006000|
sv_pos_b2u_flags|5.019003|5.019003|
sv_pos_b2u_midway|5.009004||Viu
sv_pos_u2b|5.006000|5.006000|
sv_pos_u2b_cached|5.009004||Viu
sv_pos_u2b_flags|5.011005|5.011005|
sv_pos_u2b_forwards|5.009004||Vniu
sv_pos_u2b_midway|5.009004||Vniu
SVp_POK|5.003007||Viu
SVppv_STATIC|5.035004||Viu
SVprv_PCS_IMPORTED|5.009005||Viu
SVprv_WEAKREF|5.006000||Viu
SVp_SCREAM|5.003007||Viu
SvPV|5.003007|5.003007|
sv_pv|5.008000||cV
SvPVbyte|5.006000|5.003007|p
sv_pvbyte|5.008000||cV
SvPVbyte_force|5.009002|5.009002|
sv_pvbyten|5.006000||dcV
sv_pvbyten_force|5.006000||cV
SvPVbyte_nolen|5.006000|5.006000|
SvPVbyte_nomg|5.031004|5.031004|
SvPVbyte_or_null|5.031004|5.031004|
SvPVbyte_or_null_nomg|5.031004|5.031004|
SvPVbytex|5.006000|5.006000|
SvPVbytex_force|5.006000|5.006000|
SvPVbytex_nolen|5.009003|5.009003|
SvPVCLEAR|5.025006|5.025006|p
SvPV_const|5.009003|5.003007|p
SvPV_flags|5.007002|5.003007|p
SvPV_flags_const|5.009003|5.003007|p
SvPV_flags_const_nolen|5.009003||pVu
SvPV_flags_mutable|5.009003|5.003007|p
SvPV_force|5.003007|5.003007|p
SvPV_force_flags|5.007002|5.003007|p
SvPV_force_flags_mutable|5.009003|5.003007|p
SvPV_force_flags_nolen|5.009003|5.003007|p
SvPV_force_mutable|5.009003|5.003007|p
SvPV_force_nolen|5.009003|5.003007|p
SvPV_force_nomg|5.007002|5.003007|p
SvPV_force_nomg_nolen|5.009003|5.003007|p
SvPV_free|5.009003|5.009003|
SvPV_mutable|5.009003|5.003007|p
sv_pvn|5.004000||dcV
sv_pvn_force|5.005000||cV
sv_pvn_force_flags|5.007002|5.003007|p
sv_pvn_force_nomg|5.007002||Viu
sv_pvn_nomg|5.007003|5.005000|pdu
SvPV_nolen|5.006000|5.003007|p
SvPV_nolen_const|5.009003|5.003007|p
SvPV_nomg|5.007002|5.003007|p
SvPV_nomg_const|5.009003|5.003007|p
SvPV_nomg_const_nolen|5.009003|5.003007|p
SvPV_nomg_nolen|5.013007|5.003007|p
SvPV_renew|5.009003|5.003007|p
SvPV_set|5.003007|5.003007|
SvPV_shrink_to_cur|5.009003||Viu
SvPVutf8|5.006000|5.006000|
sv_pvutf8|5.008000||cV
SvPVutf8_force|5.006000|5.006000|
sv_pvutf8n|5.006000||dcV
sv_pvutf8n_force|5.006000||cV
SvPVutf8_nolen|5.006000|5.006000|
SvPVutf8_nomg|5.031004|5.031004|
SvPVutf8_or_null|5.031004|5.031004|
SvPVutf8_or_null_nomg|5.031004|5.031004|
SvPVutf8x|5.006000|5.006000|
SvPVutf8x_force|5.006000|5.006000|
SvPVX|5.003007|5.003007|
SvPVx|5.003007|5.003007|
SvPVX_const|5.009003|5.003007|p
SvPVx_const|5.009003|5.009003|
SvPVx_force|5.005000|5.005000|
SvPVX_mutable|5.009003|5.003007|p
SvPVx_nolen|5.009003|5.009003|
SvPVx_nolen_const|5.009003|5.003007|p
SvPVXtrue|5.017002||Viu
SvPVXx|5.003007|5.003007|
SvREADONLY|5.003007|5.003007|
SvREADONLY_off|5.003007|5.003007|
SvREADONLY_on|5.003007|5.003007|
sv_recode_to_utf8|5.007003|5.007003|
sv_ref|5.023005|5.023005|
SvREFCNT|5.003007|5.003007|
SvREFCNT_dec|5.003007|5.003007|
SvREFCNT_dec_NN|5.017007|5.017007|
SvREFCNT_IMMORTAL|5.017008||Viu
SvREFCNT_inc|5.003007|5.003007|pn
SvREFCNT_inc_NN|5.009004|5.003007|pn
SvREFCNT_inc_simple|5.009004|5.003007|pn
SvREFCNT_inc_simple_NN|5.009004|5.003007|pn
SvREFCNT_inc_simple_void|5.009004|5.003007|pn
SvREFCNT_inc_simple_void_NN|5.009004|5.003007|pn
SvREFCNT_inc_void|5.009004|5.003007|pn
SvREFCNT_inc_void_NN|5.009004|5.003007|pn
sv_reftype|5.003007|5.003007|
sv_replace|5.003007|5.003007|
sv_report_used|5.003007|5.003007|
sv_reset|5.003007|5.003007|
sv_resetpvn|5.017005||Viu
SvRMAGICAL|5.003007||Viu
SvRMAGICAL_off|5.003007||Viu
SvRMAGICAL_on|5.003007||Viu
SvROK|5.003007|5.003007|
SvROK_off|5.003007|5.003007|
SvROK_on|5.003007|5.003007|
SvRV|5.003007|5.003007|
SvRV_const|5.010001||Viu
SvRV_set|5.009003|5.003007|p
sv_rvunweaken|5.027004|5.027004|
sv_rvweaken|5.006000|5.006000|
SvRVx|5.003007||Viu
SvRX|5.009005|5.003007|p
SvRXOK|5.009005|5.003007|p
SV_SAVED_COPY|5.009005||Viu
SvSCREAM|5.003007||Viu
SvSCREAM_off|5.003007||Viu
SvSCREAM_on|5.003007||Viu
sv_setbool|5.035004|5.035004|
sv_setbool_mg|5.035004|5.035004|
sv_setgid|5.019001||Viu
sv_sethek|5.015004||cViu
sv_setiv|5.003007|5.003007|
sv_setiv_mg|5.004005|5.003007|p
SvSETMAGIC|5.003007|5.003007|
SvSetMagicSV|5.004000|5.004000|
SvSetMagicSV_nosteal|5.004000|5.004000|
sv_setnv|5.006000|5.003007|
sv_setnv_mg|5.006000|5.003007|p
sv_setpv|5.003007|5.003007|
sv_setpv_bufsize|5.025006|5.025006|
sv_setpvf|5.004000||vV
sv_setpvf_mg|5.004005||pvV
sv_setpvf_mg_nocontext|5.006000||pvVn
sv_setpvf_nocontext|5.006000||vVn
sv_setpviv|5.008001|5.008001|d
sv_setpviv_mg|5.008001|5.008001|d
sv_setpv_mg|5.004005|5.003007|p
sv_setpvn|5.003007|5.003007|
sv_setpvn_fresh|5.035006|5.035006|
sv_setpvn_mg|5.004005|5.003007|p
sv_setpvs|5.009004|5.003007|p
sv_setpvs_mg|5.013006|5.013006|
sv_setref_iv|5.003007|5.003007|
sv_setref_nv|5.006000|5.003007|
sv_setref_pv|5.003007|5.003007|
sv_setref_pvn|5.003007|5.003007|
sv_setref_pvs|5.013006|5.013006|
sv_setref_uv|5.007001|5.007001|
sv_setrv_inc|5.035004|5.035004|
sv_setrv_inc_mg|5.035004|5.035004|
sv_setrv_noinc|5.035004|5.035004|
sv_setrv_noinc_mg|5.035004|5.035004|
sv_setsv|5.003007|5.003007|
SvSetSV|5.003007|5.003007|
sv_setsv_cow|5.009000||xcViu
sv_setsv_flags|5.007002|5.003007|p
sv_setsv_mg|5.004005|5.003007|p
sv_setsv_nomg|5.007002|5.003007|p
SvSetSV_nosteal|5.004000|5.004000|
sv_setuid|5.019001||Viu
sv_set_undef|5.025008|5.025008|
sv_setuv|5.004000|5.003007|p
sv_setuv_mg|5.004005|5.003007|p
SVs_GMG|5.003007||Viu
SvSHARE|5.007003|5.007003|
SvSHARED_HASH|5.009003|5.003007|p
SvSHARED_HEK_FROM_PV|5.009003||Viu
SV_SKIP_OVERLOAD|5.013001||Viu
SV_SMAGIC|5.009003|5.003007|p
SvSMAGICAL|5.003007||Viu
SvSMAGICAL_off|5.003007||Viu
SvSMAGICAL_on|5.003007||Viu
SVs_OBJECT|5.003007||Viu
SVs_PADMY|5.003007||Viu
SVs_PADSTALE|5.009000|5.009000|
SVs_PADTMP|5.003007||Viu
SVs_RMG|5.003007||Viu
SVs_SMG|5.003007||Viu
SvSTASH|5.003007|5.003007|
SvSTASH_set|5.009003|5.003007|p
SVs_TEMP|5.003007|5.003007|
sv_streq|5.035009|5.035009|
sv_streq_flags|5.035009|5.035009|
sv_string_from_errnum|5.027003|5.027003|
SvTAIL|5.003007||Viu
SvTAINT|5.003007|5.003007|
sv_taint|5.009003||cV
SvTAINTED|5.004000|5.004000|
sv_tainted|5.004000||cV
SvTAINTED_off|5.004000|5.004000|
SvTAINTED_on|5.004000|5.004000|
SvTEMP|5.003007||Viu
SvTEMP_off|5.003007||Viu
SvTEMP_on|5.003007||Viu
SVt_FIRST|5.021005||Viu
SvTHINKFIRST|5.003007||Vi
SvTIED_mg|5.005003||Viu
SvTIED_obj|5.005003|5.005003|
SVt_INVLIST|||c
SVt_IV|5.003007|5.003007|
SVt_MASK|5.015001||Viu
SVt_NULL|5.003007|5.003007|
SVt_NV|5.003007|5.003007|
SVt_PV|5.003007|5.003007|
SVt_PVAV|5.003007|5.003007|
SVt_PVBM|5.009005||Viu
SVt_PVCV|5.003007|5.003007|
SVt_PVFM|5.003007|5.003007|
SVt_PVGV|5.003007|5.003007|
SVt_PVHV|5.003007|5.003007|
SVt_PVIO|5.003007|5.003007|
SVt_PVIV|5.003007|5.003007|
SVt_PVLV|5.003007|5.003007|
SVt_PVMG|5.003007|5.003007|
SVt_PVNV|5.003007|5.003007|
SVt_REGEXP|5.011000|5.011000|
SvTRUE|5.003007|5.003007|
sv_true|5.005000||cV
SvTRUE_common|5.033005||cVu
SvTRUE_NN|5.017007|5.017007|
SvTRUE_nomg|5.013006|5.003007|p
SvTRUE_nomg_NN|5.017007|5.017007|
SvTRUEx|5.003007|5.003007|
SvTRUEx_nomg|5.017002||Viu
SVt_RV|5.011000||Viu
SvTYPE|5.003007|5.003007|
SVTYPEMASK|5.003007||Viu
SvUID|5.019001||Viu
SV_UNDEF_RETURNS_NULL|5.011000||Viu
sv_unglob|5.005000||Viu
sv_uni_display|5.007003|5.007003|
SvUNLOCK|5.007003|5.007003|
sv_unmagic|5.003007|5.003007|
sv_unmagicext|5.013008|5.003007|p
sv_unref|5.003007|5.003007|
sv_unref_flags|5.007001|5.007001|
sv_untaint|5.004000||cV
SvUOK|5.007001|5.006000|p
SvUOK_nog|5.017002||Viu
SvUOK_nogthink|5.017002||Viu
sv_upgrade|5.003007|5.003007|
SvUPGRADE|5.003007|5.003007|
sv_usepvn|5.003007|5.003007|
sv_usepvn_flags|5.009004|5.009004|
sv_usepvn_mg|5.004005|5.003007|p
SvUTF8|5.006000|5.003007|p
sv_utf8_decode|5.006000|5.006000|
sv_utf8_downgrade|5.006000|5.006000|
sv_utf8_downgrade_flags|5.031004|5.031004|
sv_utf8_downgrade_nomg|5.031004|5.031004|
sv_utf8_encode|5.006000|5.006000|
SV_UTF8_NO_ENCODING|5.008001|5.003007|pd
SvUTF8_off|5.006000|5.006000|
SvUTF8_on|5.006000|5.006000|
sv_utf8_upgrade|5.007001|5.007001|
sv_utf8_upgrade_flags|5.007002|5.007002|
sv_utf8_upgrade_flags_grow|5.011000|5.011000|
sv_utf8_upgrade_nomg|5.007002|5.007002|
SvUV|5.004000|5.003007|p
sv_uv|5.005000||pdcV
SvUV_nomg|5.009001|5.003007|p
SvUV_set|5.009003|5.003007|p
SvUVX|5.004000|5.003007|p
SvUVx|5.004000|5.003007|p
SvUVXx|5.004000|5.003007|pd
SvVALID|5.003007||Viu
sv_vcatpvf|5.006000|5.004000|p
sv_vcatpvf_mg|5.006000|5.004000|p
sv_vcatpvfn|5.004000|5.004000|
sv_vcatpvfn_flags|5.017002|5.017002|
SvVOK|5.008001|5.008001|
sv_vsetpvf|5.006000|5.004000|p
sv_vsetpvf_mg|5.006000|5.004000|p
sv_vsetpvfn|5.004000|5.004000|
SvVSTRING_mg|5.009004|5.003007|p
SvWEAKREF|5.006000||Viu
SvWEAKREF_off|5.006000||Viu
SvWEAKREF_on|5.006000||Viu
swallow_bom|5.006001||Viu
switch_category_locale_to_template|5.027009||Viu
SWITCHSTACK|5.003007||Viu
switch_to_global_locale|5.027009|5.003007|pn
sync_locale|5.027009|5.003007|pn
sys_init3|||cnu
sys_init|||cnu
sys_intern_clear|5.006001||Vu
sys_intern_dup|5.006000||Vu
sys_intern_init|5.006001||Vu
SYSTEM_GMTIME_MAX|5.011000||Viu
SYSTEM_GMTIME_MIN|5.011000||Viu
SYSTEM_LOCALTIME_MAX|5.011000||Viu
SYSTEM_LOCALTIME_MIN|5.011000||Viu
sys_term|||cnu
TAIL|5.005000||Viu
TAIL_t8|5.035004||Viu
TAIL_t8_p8|5.033003||Viu
TAIL_t8_pb|5.033003||Viu
TAIL_tb|5.035004||Viu
TAIL_tb_p8|5.033003||Viu
TAIL_tb_pb|5.033003||Viu
TAINT|5.004000||Viu
taint_env|5.003007|5.003007|u
TAINT_ENV|5.003007||Viu
TAINT_get|5.017006||Viu
TAINT_IF|5.003007||Viu
TAINTING_get|5.017006||Viu
TAINTING_set|5.017006||Viu
TAINT_NOT|5.003007||Viu
taint_proper|5.003007|5.003007|u
TAINT_PROPER|5.003007||Viu
TAINT_set|5.017006||Viu
TAINT_WARN_get|5.017006||Viu
TAINT_WARN_set|5.017006||Viu
TARG|5.003007|5.003007|
TARGi|5.023005||Viu
TARGn|5.023005||Viu
TARGu|5.023005||Viu
telldir|5.005000||Viu
T_FMT|5.027010||Viu
T_FMT_AMPM|5.027010||Viu
THIS|5.003007|5.003007|V
THOUSEP|5.027010||Viu
THR|5.005000||Viu
THREAD_CREATE_NEEDS_STACK|5.007002||Viu
thread_locale_init|5.027009|5.027009|xnu
thread_locale_term|5.027009|5.027009|xnu
THREAD_RET_TYPE|5.005000||Viu
tied_method|5.013009||vViu
TIED_METHOD_ARGUMENTS_ON_STACK|5.013009||Viu
TIED_METHOD_MORTALIZE_NOT_NEEDED|5.013009||Viu
TIED_METHOD_SAY|5.013009||Viu
times|5.005000||Viu
Time_t|5.003007|5.003007|Vn
Timeval|5.004000|5.004000|Vn
TM|5.011000||Viu
tmpfile|5.003007||Viu
tmpnam|5.005000||Viu
TMPNAM_R_PROTO|5.008000|5.008000|Vn
tmps_grow_p|5.021005||cViu
to_byte_substr|5.008000||Viu
to_case_cp_list|5.035004||Viu
toCTRL|5.004000||Viu
toFOLD|5.019001|5.019001|
toFOLD_A|5.019001|5.019001|
_to_fold_latin1|5.015005||cVniu
toFOLD_LC|5.019001||Viu
toFOLD_uni|5.007003||Viu
toFOLD_utf8|5.031005|5.031005|
toFOLD_utf8_safe|5.025009|5.006000|p
toFOLD_uvchr|5.023009|5.006000|p
TO_INTERNAL_SIZE|5.023002||Viu
tokenize_use|5.009003||Viu
tokeq|5.005000||Viu
tokereport|5.007001||Viu
toLOWER|5.003007|5.003007|
toLOWER_A|5.019001|5.019001|
toLOWER_L1|5.019001|5.019001|
toLOWER_LATIN1|5.013006|5.011002|
to_lower_latin1|5.015005||Vniu
toLOWER_LC|5.004000|5.004000|
toLOWER_uni|5.006000||Viu
toLOWER_utf8|5.031005|5.031005|
toLOWER_utf8_safe|5.025009|5.006000|p
toLOWER_uvchr|5.023009|5.006000|p
too_few_arguments_pv|5.016000||Viu
TOO_LATE_FOR|5.008001||Viu
too_many_arguments_pv|5.016000||Viu
TOPi|5.003007||Viu
TOPl|5.003007||Viu
TOPm1s|5.007001||Viu
TOPMARK|5.003007||cViu
TOPn|5.003007||Viu
TOPp1s|5.007001||Viu
TOPp|5.003007||Viu
TOPpx|5.005003||Viu
TOPs|5.003007||Viu
TOPu|5.004000||Viu
TOPul|5.006000||Viu
toTITLE|5.019001|5.019001|
toTITLE_A|5.019001|5.019001|
toTITLE_uni|5.006000||Viu
toTITLE_utf8|5.031005|5.031005|
toTITLE_utf8_safe|5.025009|5.006000|p
toTITLE_uvchr|5.023009|5.006000|p
to_uni_fold|5.014000||cVu
_to_uni_fold_flags|5.014000||cVu
to_uni_lower|5.006000||cVu
to_uni_title|5.006000||cVu
to_uni_upper|5.006000||cVu
toUPPER|5.003007|5.003007|
toUPPER_A|5.019001|5.019001|
toUPPER_LATIN1_MOD|5.011002||Viu
toUPPER_LC|5.004000||Viu
_to_upper_title_latin1|5.015005||Viu
toUPPER_uni|5.006000||Viu
toUPPER_utf8|5.031005|5.031005|
toUPPER_utf8_safe|5.025009|5.006000|p
toUPPER_uvchr|5.023009|5.006000|p
_to_utf8_case|5.023006||Viu
_to_utf8_fold_flags|5.014000||cVu
_to_utf8_lower_flags|5.015006||cVu
to_utf8_substr|5.008000||Viu
_to_utf8_title_flags|5.015006||cVu
_to_utf8_upper_flags|5.015006||cVu
translate_substr_offsets|5.015006||Vniu
traverse_op_tree|5.029008||Vi
TR_DELETE|5.031006||Viu
TRIE|5.009002||Viu
TRIE_BITMAP|5.009004||Viu
TRIE_BITMAP_BYTE|5.009004||Viu
TRIE_BITMAP_CLEAR|5.009004||Viu
TRIE_BITMAP_SET|5.009004||Viu
TRIE_BITMAP_TEST|5.009004||Viu
TRIEC|5.009004||Viu
TRIE_CHARCOUNT|5.009004||Viu
TRIEC_t8|5.035004||Viu
TRIEC_t8_p8|5.033003||Viu
TRIEC_t8_pb|5.033003||Viu
TRIEC_tb|5.035004||Viu
TRIEC_tb_p8|5.033003||Viu
TRIEC_tb_pb|5.033003||Viu
TRIE_next|5.009005||Viu
TRIE_next_fail|5.009005||Viu
TRIE_next_fail_t8|5.035004||Viu
TRIE_next_fail_t8_p8|5.033003||Viu
TRIE_next_fail_t8_pb|5.033003||Viu
TRIE_next_fail_tb|5.035004||Viu
TRIE_next_fail_tb_p8|5.033003||Viu
TRIE_next_fail_tb_pb|5.033003||Viu
TRIE_next_t8|5.035004||Viu
TRIE_next_t8_p8|5.033003||Viu
TRIE_next_t8_pb|5.033003||Viu
TRIE_next_tb|5.035004||Viu
TRIE_next_tb_p8|5.033003||Viu
TRIE_next_tb_pb|5.033003||Viu
TRIE_NODEIDX|5.009002||Viu
TRIE_NODENUM|5.009002||Viu
TRIE_t8|5.035004||Viu
TRIE_t8_p8|5.033003||Viu
TRIE_t8_pb|5.033003||Viu
TRIE_tb|5.035004||Viu
TRIE_tb_p8|5.033003||Viu
TRIE_tb_pb|5.033003||Viu
TRIE_WORDS_OFFSET|5.009005||Viu
TR_OOB|5.031006||Viu
TR_R_EMPTY|5.031006||Viu
TR_SPECIAL_HANDLING|5.031006||Viu
TRUE|5.003007||Viu
truncate|5.006000||Viu
TR_UNLISTED|5.031006||Viu
TR_UNMAPPED|5.031006||Viu
try_amagic_bin|||ciu
tryAMAGICbin_MG|5.013002||Viu
try_amagic_un|||ciu
tryAMAGICunDEREF|5.006000||Viu
tryAMAGICun_MG|5.013002||Viu
tryAMAGICunTARGETlist|5.017002||Viu
TS_W32_BROKEN_LOCALECONV|5.027010||Viu
tTHX|5.009003||Viu
ttyname|5.009000||Viu
TTYNAME_R_PROTO|5.008000|5.008000|Vn
turkic_fc|5.029008||Viu
turkic_lc|5.029008||Viu
turkic_uc|5.029008||Viu

ppport.h  view on Meta::CPAN

UTF8_IS_SUPER|5.023002|5.023002|
UTF8_IS_SURROGATE|5.023002|5.023002|
utf8_length|5.007001|5.007001|
UTF8_MAXBYTES|5.009002|5.006000|p
UTF8_MAXBYTES_CASE|5.009002|5.003007|p
UTF8_MAX_FOLD_CHAR_EXPAND|5.013009||Viu
UTF8_MAXLEN|5.006000||Viu
utf8_mg_len_cache_update|5.013003||Viu
utf8_mg_pos_cache_update|5.009004||Viu
utf8n_to_uvchr|5.007001|5.007001|n
utf8n_to_uvchr_error|5.025006|5.025006|n
utf8n_to_uvchr_msgs|5.027009|5.027009|n
_utf8n_to_uvchr_msgs_helper|5.029001||cVnu
utf8n_to_uvuni|5.007001||dcV
UTF8_SAFE_SKIP|5.029009|5.006000|p
UTF8SKIP|5.006000|5.006000|
UTF8_SKIP|5.023002|5.006000|p
utf8_to_bytes|5.006001|5.006001|x
utf8_to_utf16|5.035004||Viu
utf8_to_utf16_base|5.035004||xcViu
utf8_to_utf16_reversed|5.035004||Viu
utf8_to_uvchr|5.007001|5.006001|pd
utf8_to_uvchr_buf|5.015009|5.006001|p
utf8_to_uvchr_buf_helper|5.031004||cVu
utf8_to_uvuni|5.007001||dcV
utf8_to_uvuni_buf|5.015009||dcV
UTF8_TWO_BYTE_HI|5.011002||Viu
UTF8_TWO_BYTE_HI_nocast|5.011002||Viu
UTF8_TWO_BYTE_LO|5.011002||Viu
UTF8_TWO_BYTE_LO_nocast|5.011002||Viu
UTF8_WARN_ABOVE_31_BIT|5.023006||Viu
UTF8_WARN_FE_FF|5.013009||Viu
UTF8_WARN_ILLEGAL_C9_INTERCHANGE|5.025005|5.025005|
UTF8_WARN_ILLEGAL_INTERCHANGE|5.013009|5.013009|
UTF8_WARN_NONCHAR|5.013009|5.013009|
UTF8_WARN_PERL_EXTENDED|5.027002|5.027002|
UTF8_WARN_SUPER|5.013009|5.013009|
UTF8_WARN_SURROGATE|5.013009|5.013009|
UTF_ACCUMULATION_SHIFT|5.007001||Viu
UTF_CONTINUATION_BYTE_INFO_BITS|5.035004||Viu
UTF_CONTINUATION_MARK|5.007001||Viu
UTF_CONTINUATION_MASK|5.007001||Viu
UTF_EBCDIC_CONTINUATION_BYTE_INFO_BITS|5.035004||Viu
UTF_FIRST_CONT_BYTE_110000|5.035004||Viu
UTF_FIRST_CONT_BYTE|5.035004||Viu
UTF_IS_CONTINUATION_MASK|5.023006||Viu
UTF_MIN_ABOVE_LATIN1_BYTE|5.031006||Viu
UTF_MIN_CONTINUATION_BYTE|5.035004||Viu
UTF_MIN_START_BYTE|5.031006||Viu
UTF_START_BYTE_110000|5.035004||Viu
UTF_START_BYTE|5.035004||Viu
UTF_START_MARK|5.007001||Viu
UTF_START_MASK|5.007001||Viu
UTF_TO_NATIVE|5.007001||Viu
utilize|5.003007||Viu
utime|5.005000||Viu
U_V|5.006000|5.003007|
UVCHR_IS_INVARIANT|5.019004|5.003007|p
UVCHR_SKIP|5.022000|5.003007|p
uvchr_to_utf8|5.007001|5.007001|
uvchr_to_utf8_flags|5.007003|5.007003|
uvchr_to_utf8_flags_msgs|5.027009|5.027009|
UV_DIG|5.006000||Viu
UVf|5.010000|5.010000|d
UV_IS_QUAD|5.006000||Viu
UV_MAX|5.003007|5.003007|
UV_MAX_P1|5.007002||Viu
UV_MAX_P1_HALF|5.007002||Viu
UV_MIN|5.003007|5.003007|
UVof|5.006000|5.003007|poVn
uvoffuni_to_utf8_flags|5.027009||cV
uvoffuni_to_utf8_flags_msgs|5.027009||cVu
UVSIZE|5.006000|5.003007|poVn
UVTYPE|5.006000|5.003007|poVn
UVuf|5.006000|5.003007|poVn
uvuni_to_utf8|5.019004||cVu
uvuni_to_utf8_flags|5.007003||dcV
UVxf|5.006000|5.003007|poVn
UVXf|5.007001|5.007001|poVn
VAL_EAGAIN|5.003007|5.003007|Vn
validate_proto|5.019002||xcVi
validate_suid|||iu
valid_utf8_to_uvchr|5.015009||cVn
valid_utf8_to_uvuni|5.015009||dcVu
VAL_O_NONBLOCK|5.003007|5.003007|Vn
variant_byte_number|5.031004||cVnu
variant_under_utf8_count|5.027007||Vni
varname|5.009003||Viu
vcmp|5.009000|5.009000|
VCMP|5.019008||Viu
vcroak|5.006000|5.006000|
vdeb|5.007003|5.007003|u
VERB|5.009005||Viu
VERB_t8|5.035004||Viu
VERB_t8_p8|5.033003||Viu
VERB_t8_pb|5.033003||Viu
VERB_tb|5.035004||Viu
VERB_tb_p8|5.033003||Viu
VERB_tb_pb|5.033003||Viu
vform|5.006000|5.006000|
vfprintf|5.003007||Viu
visit|5.005000||Viu
vivify_defelem|5.004000||cViu
vivify_ref|5.004000||Viu
vload_module|5.006000|5.003007|p
vmess|5.006000|5.004000|p
vnewSVpvf|5.006000|5.004000|p
vnormal|5.009002|5.009002|
VNORMAL|5.019008||Viu
vnumify|5.009000|5.009000|
VNUMIFY|5.019008||Viu
voidnonfinal|5.035002||Viu
VOL|5.003007||Viu
vstringify|5.009000|5.009000|
VSTRINGIFY|5.019008||Viu
VTBL_amagic|5.005003||Viu
VTBL_amagicelem|5.005003||Viu
VTBL_arylen|5.005003||Viu
VTBL_bm|5.005003||Viu
VTBL_collxfrm|5.005003||Viu
VTBL_dbline|5.005003||Viu
VTBL_defelem|5.005003||Viu
VTBL_env|5.005003||Viu
VTBL_envelem|5.005003||Viu
VTBL_fm|5.005003||Viu
VTBL_glob|5.005003||Viu
VTBL_isa|5.005003||Viu
VTBL_isaelem|5.005003||Viu
VTBL_mglob|5.005003||Viu
VTBL_nkeys|5.005003||Viu
VTBL_pack|5.005003||Viu
VTBL_packelem|5.005003||Viu
VTBL_pos|5.005003||Viu
VTBL_regdata|5.006000||Viu
VTBL_regdatum|5.006000||Viu
VTBL_regexp|5.005003||Viu
VTBL_sigelem|5.005003||Viu

ppport.h  view on Meta::CPAN

      print "Support needs to be explicitly requested by #define NEED_$f\n",
            "(or #define NEED_${f}_GLOBAL).\n"              if exists $need{$f};
      $info++;
    }

    if ($base || ! $API{$f}{ppport_fnc}) {
      my $email = "Send email to perl5-porters\@perl.org if you need to have this functionality.\n";
      if ($API{$f}{inaccessible}) {
        print "\nThis is not part of the public API, and may not even be accessible to XS code.\n";
        $info++;
      }
      elsif ($API{$f}{core_only}) {
        print "\nThis is not part of the public API, and should not be used by XS code.\n";
        $info++;
      }
      elsif ($API{$f}{deprecated}) {
        print "\nThis is deprecated and should not be used.  Convert existing uses.\n";
        $info++;
      }
      elsif ($API{$f}{experimental}) {
        print "\nThe API for this is unstable and should not be used by XS code.\n", $email;
        $info++;
      }
      elsif ($API{$f}{undocumented}) {
        print "\nSince this is undocumented, the API should be considered unstable.\n";
        if ($API{$f}{provided}) {
            print "Consider bringing this up on the list: perl5-porters\@perl.org.\n";
        }
        else {
            print "It may be that this is not intended for XS use, or it may just be\n",
                  "that no one has gotten around to documenting it.\n", $email;
        }
        $info++;
      }
      unless ($info) {
        print "No portability information available.  Check your spelling; or",
              " this could be\na bug in Devel::PPPort.  To report an issue:\n",
              "https://github.com/Dual-Life/Devel-PPPort/issues/new\n";
      }
    }

    print "\nDepends on: ", join(', ', @{$depends{$f}}), ".\n"
                                                         if exists $depends{$f};
    if (exists $hints{$f} || exists $warnings{$f}) {
      print "\n$hints{$f}" if exists $hints{$f};
      print "\nWARNING:\n$warnings{$f}" if exists $warnings{$f};
      $info++;
    }
    $count++;
  }

  $count or print "\nFound no API matching '$opt{'api-info'}'.";
  print "\n";
  exit 0;
}

if (exists $opt{'list-provided'}) {
  my $f;
  for $f (sort dictionary_order keys %API) {
    next unless $API{$f}{provided};
    my @flags;
    push @flags, 'explicit' if exists $need{$f};
    push @flags, 'depend'   if exists $depends{$f};
    push @flags, 'hint'     if exists $hints{$f};
    push @flags, 'warning'  if exists $warnings{$f};
    my $flags = @flags ? '  ['.join(', ', @flags).']' : '';
    print "$f$flags\n";
  }
  exit 0;
}

my @files;
my @srcext = qw( .xs .c .h .cc .cpp -c.inc -xs.inc );
my $srcext = join '|', map { quotemeta $_ } @srcext;

if (@ARGV) {
  my %seen;
  for (@ARGV) {
    if (-e) {
      if (-f) {
        push @files, $_ unless $seen{$_}++;
      }
      else { warn "'$_' is not a file.\n" }
    }
    else {
      my @new = grep { -f } glob $_
          or warn "'$_' does not exist.\n";
      push @files, grep { !$seen{$_}++ } @new;
    }
  }
}
else {
  eval {
    require File::Find;
    File::Find::find(sub {
      $File::Find::name =~ /($srcext)$/i
          and push @files, $File::Find::name;
    }, '.');
  };
  if ($@) {
    @files = map { glob "*$_" } @srcext;
  }
}

if (!@ARGV || $opt{filter}) {
  my(@in, @out);
  my %xsc = map { /(.*)\.xs$/ ? ("$1.c" => 1, "$1.cc" => 1) : () } @files;
  for (@files) {
    my $out = exists $xsc{$_} || /\b\Q$ppport\E$/i || !/($srcext)$/i;
    push @{ $out ? \@out : \@in }, $_;
  }
  if (@ARGV && @out) {
    warning("Skipping the following files (use --nofilter to avoid this):\n| ", join "\n| ", @out);
  }
  @files = @in;
}

die "No input files given!\n" unless @files;

my(%files, %global, %revreplace);
%revreplace = reverse %replace;
my $filename;
my $patch_opened = 0;

for $filename (@files) {
  unless (open IN, "<$filename") {
    warn "Unable to read from $filename: $!\n";

ppport.h  view on Meta::CPAN

 * isIDFIRST_uvchr, isLOWER_uvchr, isPRINT_uvchr, isPSXSPC_uvchr,
 * isPUNCT_uvchr, isSPACE_uvchr, isUPPER_uvchr, isWORDCHAR_uvchr,
 * isWORDCHAR_uvchr, isXDIGIT_uvchr
 *
 * The UTF-8 handling is buggy in early Perls, and this can give inaccurate
 * results for code points above 0xFF, until the implementation started
 * settling down in 5.12 and 5.14 */

#endif

#define D_PPP_TOO_SHORT_MSG  "Malformed UTF-8 character starting with:"      \
                             " \\x%02x (too short; %d bytes available, need" \
                             " %d)\n"
/* Perls starting here had a new API which handled multi-character results */
#if (PERL_BCDVERSION >= 0x5007003)
#ifndef toLOWER_uvchr
#  define toLOWER_uvchr(c, s, l)         UNI_TO_NATIVE(to_uni_lower(NATIVE_TO_UNI(c), s, l))
#endif

#ifndef toUPPER_uvchr
#  define toUPPER_uvchr(c, s, l)         UNI_TO_NATIVE(to_uni_upper(NATIVE_TO_UNI(c), s, l))
#endif

#ifndef toTITLE_uvchr
#  define toTITLE_uvchr(c, s, l)         UNI_TO_NATIVE(to_uni_title(NATIVE_TO_UNI(c), s, l))
#endif

#ifndef toFOLD_uvchr
#  define toFOLD_uvchr(c, s, l)          UNI_TO_NATIVE(to_uni_fold( NATIVE_TO_UNI(c), s, l))
#endif

#  if (PERL_BCDVERSION != 0x5015006)     /* Just this version is broken */

      /* Prefer the macro to the function */
#    if defined toLOWER_utf8
#      define D_PPP_TO_LOWER_CALLEE(s,r,l)    toLOWER_utf8(s,r,l)
#    else
#      define D_PPP_TO_LOWER_CALLEE(s,r,l)    to_utf8_lower(s,r,l)
#    endif
#    if defined toTITLE_utf8
#      define D_PPP_TO_TITLE_CALLEE(s,r,l)    toTITLE_utf8(s,r,l)
#    else
#      define D_PPP_TO_TITLE_CALLEE(s,r,l)    to_utf8_title(s,r,l)
#    endif
#    if defined toUPPER_utf8
#      define D_PPP_TO_UPPER_CALLEE(s,r,l)    toUPPER_utf8(s,r,l)
#    else
#      define D_PPP_TO_UPPER_CALLEE(s,r,l)    to_utf8_upper(s,r,l)
#    endif
#    if defined toFOLD_utf8
#      define D_PPP_TO_FOLD_CALLEE(s,r,l)     toFOLD_utf8(s,r,l)
#    else
#      define D_PPP_TO_FOLD_CALLEE(s,r,l)     to_utf8_fold(s,r,l)
#    endif
#  else     /* Below is 5.15.6, which failed to make the macros available
#              outside of core, so we have to use the 'Perl_' form.  khw
#              decided it was easier to just handle this case than have to
#              document the exception, and make an exception in the tests below
#              */
#    define D_PPP_TO_LOWER_CALLEE(s,r,l)                                    \
                        Perl__to_utf8_lower_flags(aTHX_ s, r, l, 0, NULL)
#    define D_PPP_TO_TITLE_CALLEE(s,r,l)                                    \
                        Perl__to_utf8_title_flags(aTHX_ s, r, l, 0, NULL)
#    define D_PPP_TO_UPPER_CALLEE(s,r,l)                                    \
                        Perl__to_utf8_upper_flags(aTHX_ s, r, l, 0, NULL)
#    define D_PPP_TO_FOLD_CALLEE(s,r,l)                                     \
            Perl__to_utf8_fold_flags(aTHX_ s, r, l, FOLD_FLAGS_FULL, NULL)
#  endif

/* The actual implementation of the backported macros.  If too short, croak,
 * otherwise call the original that doesn't have an upper limit parameter */
#  define D_PPP_GENERIC_MULTI_ARG_TO(name, s, e,r,l)                        \
    (((((e) - (s)) <= 0)                                                    \
         /* We could just do nothing, but modern perls croak */             \
      ? (croak("Attempting case change on zero length string"),             \
         0) /* So looks like it returns something, and will compile */      \
      : ((e) - (s)) < UTF8SKIP(s))                                          \
        ? (croak(D_PPP_TOO_SHORT_MSG,                                       \
                               s[0], (int) ((e) - (s)), (int) UTF8SKIP(s)), \
           0)                                                               \
        : D_PPP_TO_ ## name ## _CALLEE(s,r,l))
#ifndef toUPPER_utf8_safe
#  define toUPPER_utf8_safe(s,e,r,l)     \
                        D_PPP_GENERIC_MULTI_ARG_TO(UPPER,s,e,r,l)
#endif

#ifndef toLOWER_utf8_safe
#  define toLOWER_utf8_safe(s,e,r,l)     \
                        D_PPP_GENERIC_MULTI_ARG_TO(LOWER,s,e,r,l)
#endif

#ifndef toTITLE_utf8_safe
#  define toTITLE_utf8_safe(s,e,r,l)     \
                        D_PPP_GENERIC_MULTI_ARG_TO(TITLE,s,e,r,l)
#endif

#ifndef toFOLD_utf8_safe
#  define toFOLD_utf8_safe(s,e,r,l)      \
                        D_PPP_GENERIC_MULTI_ARG_TO(FOLD,s,e,r,l)
#endif

#elif (PERL_BCDVERSION >= 0x5006000)

/* Here we have UTF-8 support, but using the original API where the case
 * changing functions merely returned the changed code point; hence they
 * couldn't handle multi-character results. */

#  ifdef uvchr_to_utf8
#    define D_PPP_UV_TO_UTF8 uvchr_to_utf8
#  else
#    define D_PPP_UV_TO_UTF8 uv_to_utf8
#  endif

   /* Get the utf8 of the case changed value, and store its length; then have
    * to re-calculate the changed case value in order to return it */
#  define D_PPP_GENERIC_SINGLE_ARG_TO_UVCHR(name, c, s, l)                  \
        (*(l) = (D_PPP_UV_TO_UTF8(s,                                        \
                 UNI_TO_NATIVE(to_uni_ ## name(NATIVE_TO_UNI(c)))) - (s)),  \
        UNI_TO_NATIVE(to_uni_ ## name(NATIVE_TO_UNI(c))))
#ifndef toLOWER_uvchr
#  define toLOWER_uvchr(c, s, l)         \
                        D_PPP_GENERIC_SINGLE_ARG_TO_UVCHR(lower, c, s, l)
#endif

#ifndef toUPPER_uvchr
#  define toUPPER_uvchr(c, s, l)         \
                        D_PPP_GENERIC_SINGLE_ARG_TO_UVCHR(upper, c, s, l)

ppport.h  view on Meta::CPAN

#else

#  define SvPVbyte          SvPV
#  define sv_2pvbyte        sv_2pv

#endif
#ifndef sv_2pvbyte_nolen
#  define sv_2pvbyte_nolen(sv)           sv_2pv_nolen(sv)
#endif

/* Hint: sv_pvn
 * Always use the SvPV() macro instead of sv_pvn().
 */

/* Replace sv_pvn with SvPV */

/* Hint: sv_pvn_force
 * Always use the SvPV_force() macro instead of sv_pvn_force().
 */

/* Replace sv_pvn_force with SvPV_force */

/* If these are undefined, they're not handled by the core anyway */
#ifndef SV_IMMEDIATE_UNREF
#  define SV_IMMEDIATE_UNREF             0
#endif

#ifndef SV_GMAGIC
#  define SV_GMAGIC                      0
#endif

#ifndef SV_COW_DROP_PV
#  define SV_COW_DROP_PV                 0
#endif

#ifndef SV_UTF8_NO_ENCODING
#  define SV_UTF8_NO_ENCODING            0
#endif

#ifndef SV_CONST_RETURN
#  define SV_CONST_RETURN                0
#endif

#ifndef SV_MUTABLE_RETURN
#  define SV_MUTABLE_RETURN              0
#endif

#ifndef SV_SMAGIC
#  define SV_SMAGIC                      0
#endif

#ifndef SV_HAS_TRAILING_NUL
#  define SV_HAS_TRAILING_NUL            0
#endif

#ifndef SV_COW_SHARED_HASH_KEYS
#  define SV_COW_SHARED_HASH_KEYS        0
#endif

#if defined(PERL_USE_GCC_BRACE_GROUPS)
#ifndef sv_2pv_flags
#  define sv_2pv_flags(sv, lp, flags)    ({ SV *_sv = (sv); const I32 _flags = (flags); STRLEN *_lp = lp; _lp = _lp ? : &PL_na; (!(_flags & SV_GMAGIC) && SvGMAGICAL(_sv)) ? ({ char *_pv; SvGMAGICAL_off(_sv); _pv = sv_2pv(_sv, _lp); SvGMAGICAL_on(_sv)...
#endif

#ifndef sv_pvn_force_flags
#  define sv_pvn_force_flags(sv, lp, flags) ({ SV *_sv = (sv); const I32 _flags = (flags); STRLEN *_lp = lp; _lp = _lp ? : &PL_na; (!(_flags & SV_GMAGIC) && SvGMAGICAL(_sv)) ? ({ char *_pv; SvGMAGICAL_off(_sv); _pv = sv_pvn_force(_sv, _lp); SvGMAGICA...
#endif

#else
#ifndef sv_2pv_flags
#  define sv_2pv_flags(sv, lp, flags)    ((PL_Sv = (sv)), (!((flags) & SV_GMAGIC) && SvGMAGICAL(PL_Sv)) ? (SvGMAGICAL_off(PL_Sv), (PL_Xpv = (XPV *)sv_2pv(PL_Sv, (lp) ? (lp) : &PL_na)), SvGMAGICAL_on(PL_Sv), (char *)PL_Xpv) : sv_2pv(PL_Sv, (lp) ? (lp)...
#endif

#ifndef sv_pvn_force_flags
#  define sv_pvn_force_flags(sv, lp, flags) ((PL_Sv = (sv)), (!((flags) & SV_GMAGIC) && SvGMAGICAL(PL_Sv)) ? (SvGMAGICAL_off(PL_Sv), (PL_Xpv = (XPV *)sv_pvn_force(PL_Sv, (lp) ? (lp) : &PL_na)), SvGMAGICAL_on(PL_Sv), (char *)PL_Xpv) : sv_pvn_force(PL_...
#endif

#endif

#if (PERL_BCDVERSION < 0x5008008) || ( (PERL_BCDVERSION >= 0x5009000) && (PERL_BCDVERSION < 0x5009003) )
# define D_PPP_SVPV_NOLEN_LP_ARG &PL_na
#else
# define D_PPP_SVPV_NOLEN_LP_ARG 0
#endif
#ifndef SvPV_const
#  define SvPV_const(sv, lp)             SvPV_flags_const(sv, lp, SV_GMAGIC)
#endif

#ifndef SvPV_mutable
#  define SvPV_mutable(sv, lp)           SvPV_flags_mutable(sv, lp, SV_GMAGIC)
#endif
#ifndef SvPV_flags
#  define SvPV_flags(sv, lp, flags)      \
                 ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \
                  ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pv_flags(sv, &lp, flags))
#endif
#ifndef SvPV_flags_const
#  define SvPV_flags_const(sv, lp, flags) \
                 ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \
                  ? ((lp = SvCUR(sv)), SvPVX_const(sv)) : \
                  (const char*) sv_2pv_flags(sv, &lp, flags|SV_CONST_RETURN))
#endif
#ifndef SvPV_flags_const_nolen
#  define SvPV_flags_const_nolen(sv, flags) \
                 ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \
                  ? SvPVX_const(sv) : \
                  (const char*) sv_2pv_flags(sv, D_PPP_SVPV_NOLEN_LP_ARG, flags|SV_CONST_RETURN))
#endif
#ifndef SvPV_flags_mutable
#  define SvPV_flags_mutable(sv, lp, flags) \
                 ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \
                  ? ((lp = SvCUR(sv)), SvPVX_mutable(sv)) : \
                  sv_2pv_flags(sv, &lp, flags|SV_MUTABLE_RETURN))
#endif
#ifndef SvPV_force
#  define SvPV_force(sv, lp)             SvPV_force_flags(sv, lp, SV_GMAGIC)
#endif

#ifndef SvPV_force_nolen
#  define SvPV_force_nolen(sv)           SvPV_force_flags_nolen(sv, SV_GMAGIC)
#endif

#ifndef SvPV_force_mutable
#  define SvPV_force_mutable(sv, lp)     SvPV_force_flags_mutable(sv, lp, SV_GMAGIC)
#endif

#ifndef SvPV_force_nomg
#  define SvPV_force_nomg(sv, lp)        SvPV_force_flags(sv, lp, 0)
#endif

#ifndef SvPV_force_nomg_nolen
#  define SvPV_force_nomg_nolen(sv)      SvPV_force_flags_nolen(sv, 0)
#endif
#ifndef SvPV_force_flags
#  define SvPV_force_flags(sv, lp, flags) \
                 ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == SVf_POK \
                 ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_pvn_force_flags(sv, &lp, flags))
#endif
#ifndef SvPV_force_flags_nolen
#  define SvPV_force_flags_nolen(sv, flags) \
                 ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == SVf_POK \
                 ? SvPVX(sv) : sv_pvn_force_flags(sv, D_PPP_SVPV_NOLEN_LP_ARG, flags))
#endif
#ifndef SvPV_force_flags_mutable
#  define SvPV_force_flags_mutable(sv, lp, flags) \
                 ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == SVf_POK \
                 ? ((lp = SvCUR(sv)), SvPVX_mutable(sv)) \
                  : sv_pvn_force_flags(sv, &lp, flags|SV_MUTABLE_RETURN))
#endif
#ifndef SvPV_nolen
#  define SvPV_nolen(sv)                 \
                 ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \
                  ? SvPVX(sv) : sv_2pv_flags(sv, D_PPP_SVPV_NOLEN_LP_ARG, SV_GMAGIC))
#endif
#ifndef SvPV_nolen_const
#  define SvPV_nolen_const(sv)           \
                 ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \
                  ? SvPVX_const(sv) : sv_2pv_flags(sv, D_PPP_SVPV_NOLEN_LP_ARG, SV_GMAGIC|SV_CONST_RETURN))
#endif

#  if defined(PERL_USE_GCC_BRACE_GROUPS)
#ifndef SvPVx_nolen_const
#  define SvPVx_nolen_const(sv)          ({SV *sV_ = (sv); SvPV_nolen_const(sV_); })
#endif

#  else
#ifndef SvPVx_nolen_const
#  define SvPVx_nolen_const(sv)          (PL_Sv = sv, SvPV_nolen_const(PL_Sv))
#endif

#  endif
#ifndef SvPV_nomg
#  define SvPV_nomg(sv, lp)              SvPV_flags(sv, lp, 0)
#endif

#ifndef SvPV_nomg_const
#  define SvPV_nomg_const(sv, lp)        SvPV_flags_const(sv, lp, 0)
#endif

#ifndef SvPV_nomg_const_nolen
#  define SvPV_nomg_const_nolen(sv)      SvPV_flags_const_nolen(sv, 0)
#endif

#ifndef SvPV_nomg_nolen
#  define SvPV_nomg_nolen(sv)            ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \
                                    ? SvPVX(sv) : sv_2pv_flags(sv, D_PPP_SVPV_NOLEN_LP_ARG, 0))
#endif
#ifndef SvPV_renew
#  define SvPV_renew(sv,n)               STMT_START { SvLEN_set(sv, n); \
                 SvPV_set((sv), (char *) saferealloc(          \
                       (Malloc_t)SvPVX(sv), (MEM_SIZE)((n)))); \
               } STMT_END
#endif
#ifndef SvPVCLEAR
#  define SvPVCLEAR(sv)                  sv_setpvs((sv), "")
#endif
#ifndef WARN_ALL
#  define WARN_ALL                       0
#endif

#ifndef WARN_CLOSURE
#  define WARN_CLOSURE                   1
#endif

#ifndef WARN_DEPRECATED
#  define WARN_DEPRECATED                2
#endif

#ifndef WARN_EXITING
#  define WARN_EXITING                   3
#endif

#ifndef WARN_GLOB
#  define WARN_GLOB                      4
#endif

#ifndef WARN_IO
#  define WARN_IO                        5
#endif

#ifndef WARN_CLOSED
#  define WARN_CLOSED                    6
#endif

#ifndef WARN_EXEC
#  define WARN_EXEC                      7
#endif

#ifndef WARN_LAYER
#  define WARN_LAYER                     8
#endif

#ifndef WARN_NEWLINE
#  define WARN_NEWLINE                   9
#endif

#ifndef WARN_PIPE
#  define WARN_PIPE                      10
#endif

#ifndef WARN_UNOPENED
#  define WARN_UNOPENED                  11
#endif

#ifndef WARN_MISC
#  define WARN_MISC                      12

ppport.h  view on Meta::CPAN

#if (PERL_BCDVERSION >= 0x5003098) && (PERL_BCDVERSION < 0x5006000)
#ifndef eval_pv
#  define eval_pv                        perl_eval_pv
#endif

#endif
/* Replace: 0 */

#if (PERL_BCDVERSION < 0x5006000)
#ifndef Perl_eval_sv
#  define Perl_eval_sv                   perl_eval_sv
#endif

#if (PERL_BCDVERSION >= 0x5003098)
#ifndef Perl_eval_pv
#  define Perl_eval_pv                   perl_eval_pv
#endif

#endif
#endif
#ifndef G_LIST
#  define G_LIST                         G_ARRAY    /* Replace */
#endif
#ifndef PERL_LOADMOD_DENY
#  define PERL_LOADMOD_DENY              0x1
#endif

#ifndef PERL_LOADMOD_NOIMPORT
#  define PERL_LOADMOD_NOIMPORT          0x2
#endif

#ifndef PERL_LOADMOD_IMPORT_OPS
#  define PERL_LOADMOD_IMPORT_OPS        0x4
#endif

#if defined(PERL_USE_GCC_BRACE_GROUPS)
# define D_PPP_CROAK_IF_ERROR(cond) ({              \
    SV *_errsv;                                     \
    (   (cond)                                      \
     && (_errsv = ERRSV)                            \
     && (SvROK(_errsv) || SvTRUE(_errsv))           \
     && (croak_sv(_errsv), 1));                     \
  })
#else
  PERL_STATIC_INLINE void D_PPP_CROAK_IF_ERROR(int cond) {
    dTHX;
    SV *errsv;
    if (!cond) return;
    errsv = ERRSV;
    if (SvROK(errsv) || SvTRUE(errsv)) croak_sv(errsv);
  }
# define D_PPP_CROAK_IF_ERROR(cond) D_PPP_CROAK_IF_ERROR(cond)
#endif

#ifndef G_METHOD
# define G_METHOD               64
# ifdef call_sv
#  undef call_sv
# endif
# if (PERL_BCDVERSION < 0x5006000)
#  define call_sv(sv, flags)  ((flags) & G_METHOD ? perl_call_method((char *) SvPV_nolen_const(sv), \
                                (flags) & ~G_METHOD) : perl_call_sv(sv, flags))
# else
#  define call_sv(sv, flags)  ((flags) & G_METHOD ? Perl_call_method(aTHX_ (char *) SvPV_nolen_const(sv), \
                                (flags) & ~G_METHOD) : Perl_call_sv(aTHX_ sv, flags))
# endif
#endif

#ifndef G_RETHROW
# define G_RETHROW 8192
# ifdef eval_sv
#  undef eval_sv
# endif
# if defined(PERL_USE_GCC_BRACE_GROUPS)
#  define eval_sv(sv, flags) ({ I32 _flags = (flags); I32 _ret = Perl_eval_sv(aTHX_ sv, (_flags & ~G_RETHROW)); D_PPP_CROAK_IF_ERROR(_flags & G_RETHROW); _ret; })
# else
#  define eval_sv(sv, flags) ((PL_na = Perl_eval_sv(aTHX_ sv, ((flags) & ~G_RETHROW))), D_PPP_CROAK_IF_ERROR((flags) & G_RETHROW), (I32)PL_na)
# endif
#endif

/* Older Perl versions have broken croak_on_error=1 */
#if (PERL_BCDVERSION < 0x5031002)
# ifdef eval_pv
#  undef eval_pv
#  if defined(PERL_USE_GCC_BRACE_GROUPS)
#   define eval_pv(p, croak_on_error) ({ SV *_sv = Perl_eval_pv(aTHX_ p, 0); D_PPP_CROAK_IF_ERROR(croak_on_error); _sv; })
#  else
#   define eval_pv(p, croak_on_error) ((PL_Sv = Perl_eval_pv(aTHX_ p, 0)), D_PPP_CROAK_IF_ERROR(croak_on_error), PL_Sv)
#  endif
# endif
#endif

/* This is backport for Perl 5.3.97d and older which do not provide perl_eval_pv */
#ifndef eval_pv
#if defined(NEED_eval_pv)
static SV * DPPP_(my_eval_pv)(const char * p, I32 croak_on_error);
static
#else
extern SV * DPPP_(my_eval_pv)(const char * p, I32 croak_on_error);
#endif

#if defined(NEED_eval_pv) || defined(NEED_eval_pv_GLOBAL)

#ifdef eval_pv
#  undef eval_pv
#endif
#define eval_pv(a,b) DPPP_(my_eval_pv)(aTHX_ a,b)
#define Perl_eval_pv DPPP_(my_eval_pv)


SV*
DPPP_(my_eval_pv)(const char *p, I32 croak_on_error)
{
    dSP;
    SV* sv = newSVpv(p, 0);

    PUSHMARK(sp);
    eval_sv(sv, G_SCALAR);
    SvREFCNT_dec(sv);

    SPAGAIN;
    sv = POPs;
    PUTBACK;

    D_PPP_CROAK_IF_ERROR(croak_on_error);

    return sv;
}

#endif
#endif

#if ! defined(vload_module) && defined(start_subparse)
#if defined(NEED_vload_module)
static void DPPP_(my_vload_module)(U32 flags, SV * name, SV * ver, va_list * args);
static
#else
extern void DPPP_(my_vload_module)(U32 flags, SV * name, SV * ver, va_list * args);
#endif

#if defined(NEED_vload_module) || defined(NEED_vload_module_GLOBAL)

#ifdef vload_module
#  undef vload_module
#endif
#define vload_module(a,b,c,d) DPPP_(my_vload_module)(aTHX_ a,b,c,d)
#define Perl_vload_module DPPP_(my_vload_module)


void
DPPP_(my_vload_module)(U32 flags, SV *name, SV *ver, va_list *args)
{
    dTHR;
    dVAR;
    OP *veop, *imop;

    OP * const modname = newSVOP(OP_CONST, 0, name);
    /* 5.005 has a somewhat hacky force_normal that doesn't croak on
       SvREADONLY() if PL_compiling is true. Current perls take care in
       ck_require() to correctly turn off SvREADONLY before calling
       force_normal_flags(). This seems a better fix than fudging PL_compiling
     */
    SvREADONLY_off(((SVOP*)modname)->op_sv);
    modname->op_private |= OPpCONST_BARE;
    if (ver) {
        veop = newSVOP(OP_CONST, 0, ver);
    }
    else
        veop = NULL;
    if (flags & PERL_LOADMOD_NOIMPORT) {
        imop = sawparens(newNULLLIST());
    }
    else if (flags & PERL_LOADMOD_IMPORT_OPS) {
        imop = va_arg(*args, OP*);
    }
    else {
        SV *sv;
        imop = NULL;
        sv = va_arg(*args, SV*);
        while (sv) {
            imop = append_elem(OP_LIST, imop, newSVOP(OP_CONST, 0, sv));
            sv = va_arg(*args, SV*);
        }
    }
    {
        const line_t ocopline = PL_copline;
        COP * const ocurcop = PL_curcop;
        const int oexpect = PL_expect;

        utilize(!(flags & PERL_LOADMOD_DENY), start_subparse(FALSE, 0),
#if (PERL_BCDVERSION > 0x5003000)
                veop,
#endif
                modname, imop);
        PL_expect = oexpect;
        PL_copline = ocopline;
        PL_curcop = ocurcop;
    }
}

#endif
#endif

#ifndef load_module
#if defined(NEED_load_module)
static void DPPP_(my_load_module)(U32 flags, SV * name, SV * ver, ...);
static
#else
extern void DPPP_(my_load_module)(U32 flags, SV * name, SV * ver, ...);
#endif

#if defined(NEED_load_module) || defined(NEED_load_module_GLOBAL)

#ifdef load_module
#  undef load_module
#endif
#define load_module DPPP_(my_load_module)
#define Perl_load_module DPPP_(my_load_module)


void
DPPP_(my_load_module)(U32 flags, SV *name, SV *ver, ...)
{
    va_list args;
    va_start(args, ver);
    vload_module(flags, name, ver, &args);
    va_end(args);
}

#endif
#endif
#ifndef newRV_inc
#  define newRV_inc(sv)                  newRV(sv)   /* Replace */
#endif

#ifndef newRV_noinc
#if defined(PERL_USE_GCC_BRACE_GROUPS)
#  define newRV_noinc(sv) ({ SV *_sv = (SV *)newRV((sv)); SvREFCNT_dec((sv)); _sv; })
#else
#  define newRV_noinc(sv) ((PL_Sv = (SV *)newRV((sv))), SvREFCNT_dec((sv)), PL_Sv)
#endif
#endif

/*
 * Boilerplate macros for initializing and accessing interpreter-local
 * data from C.  All statics in extensions should be reworked to use
 * this, if you want to make the extension thread-safe.  See ext/re/re.xs
 * for an example of the use of these macros.
 *
 * Code that uses these macros is responsible for the following:
 * 1. #define MY_CXT_KEY to a unique string, e.g. "DynaLoader_guts"
 * 2. Declare a typedef named my_cxt_t that is a structure that contains
 *    all the data that needs to be interpreter-local.
 * 3. Use the START_MY_CXT macro after the declaration of my_cxt_t.
 * 4. Use the MY_CXT_INIT macro such that it is called exactly once
 *    (typically put in the BOOT: section).
 * 5. Use the members of the my_cxt_t structure everywhere as
 *    MY_CXT.member.
 * 6. Use the dMY_CXT macro (a declaration) in all the functions that
 *    access MY_CXT.
 */

#if defined(MULTIPLICITY) || defined(PERL_OBJECT) || \
    defined(PERL_CAPI)    || defined(PERL_IMPLICIT_CONTEXT)

#ifndef START_MY_CXT

/* This must appear in all extensions that define a my_cxt_t structure,
 * right after the definition (i.e. at file scope).  The non-threads
 * case below uses it to declare the data as static. */
#define START_MY_CXT

#if (PERL_BCDVERSION < 0x5004068)
/* Fetches the SV that keeps the per-interpreter data. */
#define dMY_CXT_SV \
        SV *my_cxt_sv = get_sv(MY_CXT_KEY, FALSE)
#else /* >= perl5.004_68 */
#define dMY_CXT_SV \
        SV *my_cxt_sv = *hv_fetch(PL_modglobal, MY_CXT_KEY,             \
                                  sizeof(MY_CXT_KEY)-1, TRUE)
#endif /* < perl5.004_68 */

/* This declaration should be used within all functions that use the
 * interpreter-local data. */
#define dMY_CXT \
        dMY_CXT_SV;                                                     \

ppport.h  view on Meta::CPAN

#    define SvREFCNT_inc_NN(sv)         \
      ({                                        \
          SV * const _sv = (SV*)(sv);   \
          SvREFCNT(_sv)++;              \
          _sv;                          \
      })
#  else
#    define SvREFCNT_inc_NN(sv) \
          (PL_Sv=(SV*)(sv),++(SvREFCNT(PL_Sv)),PL_Sv)
#  endif
#endif

#ifndef SvREFCNT_inc_void
#  ifdef PERL_USE_GCC_BRACE_GROUPS
#    define SvREFCNT_inc_void(sv)               \
      ({                                        \
          SV * const _sv = (SV*)(sv);   \
          if (_sv)                      \
              (void)(SvREFCNT(_sv)++);  \
      })
#  else
#    define SvREFCNT_inc_void(sv) \
          (void)((PL_Sv=(SV*)(sv)) ? ++(SvREFCNT(PL_Sv)) : 0)
#  endif
#endif
#ifndef SvREFCNT_inc_simple_void
#  define SvREFCNT_inc_simple_void(sv)   STMT_START { if (sv) SvREFCNT(sv)++; } STMT_END
#endif

#ifndef SvREFCNT_inc_simple_NN
#  define SvREFCNT_inc_simple_NN(sv)     (++SvREFCNT(sv), (SV*)(sv))
#endif

#ifndef SvREFCNT_inc_void_NN
#  define SvREFCNT_inc_void_NN(sv)       (void)(++SvREFCNT((SV*)(sv)))
#endif

#ifndef SvREFCNT_inc_simple_void_NN
#  define SvREFCNT_inc_simple_void_NN(sv) (void)(++SvREFCNT((SV*)(sv)))
#endif

#ifndef newSV_type
#if defined(PERL_USE_GCC_BRACE_GROUPS)
#  define newSV_type(t) ({ SV *_sv = newSV(0); sv_upgrade(_sv, (t)); _sv; })
#else
#  define newSV_type(t) ((PL_Sv = newSV(0)), sv_upgrade(PL_Sv, (t)), PL_Sv)
#endif
#endif

#if (PERL_BCDVERSION < 0x5006000)
# define D_PPP_CONSTPV_ARG(x)  ((char *) (x))
#else
# define D_PPP_CONSTPV_ARG(x)  (x)
#endif
#ifndef newSVpvn
#  define newSVpvn(data,len)             ((data)                                              \
                                    ? ((len) ? newSVpv((data), (len)) : newSVpv("", 0)) \
                                    : newSV(0))
#endif
#ifndef newSVpvn_utf8
#  define newSVpvn_utf8(s, len, u)       newSVpvn_flags((s), (len), (u) ? SVf_UTF8 : 0)
#endif
#ifndef SVf_UTF8
#  define SVf_UTF8                       0
#endif

#ifndef newSVpvn_flags
#  if defined(PERL_USE_GCC_BRACE_GROUPS)
#    define newSVpvn_flags(s, len, flags)                       \
        ({                                                      \
            SV * sv = newSVpvn(D_PPP_CONSTPV_ARG(s), (len));    \
            SvFLAGS(sv) |= ((flags) & SVf_UTF8);                \
            if ((flags) & SVs_TEMP) sv = sv_2mortal(sv);        \
            sv;                                                 \
        })
#  else
     PERL_STATIC_INLINE SV* D_PPP_newSVpvn_flags(const char *const s, const STRLEN len, const U32 flags)
     {
        dTHX;
        SV * sv = newSVpvn(s, len);
        SvFLAGS(sv) |= (flags & SVf_UTF8);
        if (flags & SVs_TEMP) return sv_2mortal(sv);
        return sv;
     }
#    define newSVpvn_flags(s, len, flags) D_PPP_newSVpvn_flags((s), (len), (flags))
#  endif
#endif
#ifndef SV_NOSTEAL
#  define SV_NOSTEAL                     16
#endif

#if ( (PERL_BCDVERSION >= 0x5007003) && (PERL_BCDVERSION < 0x5008007) ) || ( (PERL_BCDVERSION >= 0x5009000) && (PERL_BCDVERSION < 0x5009002) )
#undef sv_setsv_flags
#if defined(PERL_USE_GCC_BRACE_GROUPS)
#define sv_setsv_flags(dstr, sstr, flags)                                          \
  STMT_START {                                                                     \
    if (((flags) & SV_NOSTEAL) && (sstr) && (SvFLAGS((SV *)(sstr)) & SVs_TEMP)) {  \
      SvTEMP_off((SV *)(sstr));                                                    \
      Perl_sv_setsv_flags(aTHX_ (dstr), (sstr), (flags) & ~SV_NOSTEAL);            \
      SvTEMP_on((SV *)(sstr));                                                     \
    } else {                                                                       \
      Perl_sv_setsv_flags(aTHX_ (dstr), (sstr), (flags) & ~SV_NOSTEAL);            \
    }                                                                              \
  } STMT_END
#else
#define sv_setsv_flags(dstr, sstr, flags)                                          \
  (                                                                                \
    (((flags) & SV_NOSTEAL) && (sstr) && (SvFLAGS((SV *)(sstr)) & SVs_TEMP)) ? (   \
      SvTEMP_off((SV *)(sstr)),                                                    \
      Perl_sv_setsv_flags(aTHX_ (dstr), (sstr), (flags) & ~SV_NOSTEAL),            \
      SvTEMP_on((SV *)(sstr)),                                                     \
      1                                                                            \
    ) : (                                                                          \
      Perl_sv_setsv_flags(aTHX_ (dstr), (sstr), (flags) & ~SV_NOSTEAL),            \
      1                                                                            \
    )                                                                              \
  )
#endif
#endif

#if defined(PERL_USE_GCC_BRACE_GROUPS)
#ifndef sv_setsv_flags
#  define sv_setsv_flags(dstr, sstr, flags) \
  STMT_START {                                                                     \
    if (((flags) & SV_NOSTEAL) && (sstr) && (SvFLAGS((SV *)(sstr)) & SVs_TEMP)) {  \
      SvTEMP_off((SV *)(sstr));                                                    \
      if (!((flags) & SV_GMAGIC) && (sstr) && SvGMAGICAL((SV *)(sstr))) {          \
        SvGMAGICAL_off((SV *)(sstr));                                              \
        sv_setsv((dstr), (sstr));                                                  \
        SvGMAGICAL_on((SV *)(sstr));                                               \
      } else {                                                                     \
        sv_setsv((dstr), (sstr));                                                  \
      }                                                                            \
      SvTEMP_on((SV *)(sstr));                                                     \
    } else {                                                                       \
      if (!((flags) & SV_GMAGIC) && (sstr) && SvGMAGICAL((SV *)(sstr))) {          \
        SvGMAGICAL_off((SV *)(sstr));                                              \
        sv_setsv((dstr), (sstr));                                                  \
        SvGMAGICAL_on((SV *)(sstr));                                               \
      } else {                                                                     \
        sv_setsv((dstr), (sstr));                                                  \
      }                                                                            \
    }                                                                              \
  } STMT_END
#endif

#else
#ifndef sv_setsv_flags
#  define sv_setsv_flags(dstr, sstr, flags) \
  (                                                                                \
    (((flags) & SV_NOSTEAL) && (sstr) && (SvFLAGS((SV *)(sstr)) & SVs_TEMP)) ? (   \
      SvTEMP_off((SV *)(sstr)),                                                    \
      (!((flags) & SV_GMAGIC) && (sstr) && SvGMAGICAL((SV *)(sstr))) ? (           \
        SvGMAGICAL_off((SV *)(sstr)),                                              \
        sv_setsv((dstr), (sstr)),                                                  \
        SvGMAGICAL_on((SV *)(sstr)),                                               \
        1                                                                          \
      ) : (                                                                        \
        sv_setsv((dstr), (sstr)),                                                  \
        1                                                                          \
      ),                                                                           \
      SvTEMP_on((SV *)(sstr)),                                                     \
      1                                                                            \
    ) : (                                                                          \
      (!((flags) & SV_GMAGIC) && (sstr) && SvGMAGICAL((SV *)(sstr))) ? (           \
        SvGMAGICAL_off((SV *)(sstr)),                                              \
        sv_setsv((dstr), (sstr)),                                                  \
        SvGMAGICAL_on((SV *)(sstr)),                                               \
        1                                                                          \
      ) : (                                                                        \
        sv_setsv((dstr), (sstr)),                                                  \
        1                                                                          \
      )                                                                            \
    )                                                                              \
  )
#endif

#endif

#ifndef newSVsv_flags
#  if defined(PERL_USE_GCC_BRACE_GROUPS)
#    define  newSVsv_flags(sv, flags)                       \
        ({                                                  \
            SV *n= newSV(0);                             \
            sv_setsv_flags(n, (sv), (flags));             \
            n;                                            \
        })
#  else
    PERL_STATIC_INLINE SV* D_PPP_newSVsv_flags(SV *const old, I32 flags)
        {
            dTHX;
            SV *n= newSV(0);
            sv_setsv_flags(n, old, flags);
            return n;
        }
#    define  newSVsv_flags(sv, flags) D_PPP_newSVsv_flags(sv, flags)
#  endif
#endif
#ifndef newSVsv_nomg
#  define newSVsv_nomg(sv)               newSVsv_flags((sv), SV_NOSTEAL)
#endif

#if (PERL_BCDVERSION >= 0x5017005)
#ifndef sv_mortalcopy_flags
#  define sv_mortalcopy_flags(sv, flags) Perl_sv_mortalcopy_flags(aTHX_ (sv), (flags))
#endif

#else
#ifndef sv_mortalcopy_flags
#  define sv_mortalcopy_flags(sv, flags) sv_2mortal(newSVsv_flags((sv), (flags)))
#endif

#endif
#ifndef SvMAGIC_set
#  define SvMAGIC_set(sv, val)           \
                STMT_START { assert(SvTYPE(sv) >= SVt_PVMG); \
                (((XPVMG*) SvANY(sv))->xmg_magic = (val)); } STMT_END
#endif

#if (PERL_BCDVERSION < 0x5009003)
#ifndef SvPVX_const
#  define SvPVX_const(sv)                ((const char*) (0 + SvPVX(sv)))
#endif

#ifndef SvPVX_mutable
#  define SvPVX_mutable(sv)              (0 + SvPVX(sv))
#endif
#ifndef SvRV_set
#  define SvRV_set(sv, val)              \
                STMT_START { assert(SvTYPE(sv) >=  SVt_RV); \
                (((XRV*) SvANY(sv))->xrv_rv = (val)); } STMT_END
#endif

#else
#ifndef SvPVX_const
#  define SvPVX_const(sv)                ((const char*)((sv)->sv_u.svu_pv))
#endif

#ifndef SvPVX_mutable
#  define SvPVX_mutable(sv)              ((sv)->sv_u.svu_pv)
#endif
#ifndef SvRV_set
#  define SvRV_set(sv, val)              \
                STMT_START { assert(SvTYPE(sv) >=  SVt_RV); \
                ((sv)->sv_u.svu_rv = (val)); } STMT_END
#endif

#endif
#ifndef SvSTASH_set
#  define SvSTASH_set(sv, val)           \
                STMT_START { assert(SvTYPE(sv) >= SVt_PVMG); \
                (((XPVMG*) SvANY(sv))->xmg_stash = (val)); } STMT_END
#endif

#if (PERL_BCDVERSION < 0x5004000)
#ifndef SvUV_set
#  define SvUV_set(sv, val)              \
                STMT_START { assert(SvTYPE(sv) == SVt_IV || SvTYPE(sv) >= SVt_PVIV); \
                (((XPVIV*) SvANY(sv))->xiv_iv = (IV) (val)); } STMT_END
#endif

#else
#ifndef SvUV_set
#  define SvUV_set(sv, val)              \
                STMT_START { assert(SvTYPE(sv) == SVt_IV || SvTYPE(sv) >= SVt_PVIV); \
                (((XPVUV*) SvANY(sv))->xuv_uv = (val)); } STMT_END
#endif

#endif

/* Hint: newSVpvn_share
 * The SVs created by this function only mimic the behaviour of
 * shared PVs without really being shared. Only use if you know
 * what you're doing.
 */

#ifndef newSVpvn_share

#if defined(NEED_newSVpvn_share)
static SV * DPPP_(my_newSVpvn_share)(pTHX_ const char * s, I32 len, U32 hash);
static
#else
extern SV * DPPP_(my_newSVpvn_share)(pTHX_ const char * s, I32 len, U32 hash);
#endif

#if defined(NEED_newSVpvn_share) || defined(NEED_newSVpvn_share_GLOBAL)

#ifdef newSVpvn_share
#  undef newSVpvn_share
#endif
#define newSVpvn_share(a,b,c) DPPP_(my_newSVpvn_share)(aTHX_ a,b,c)
#define Perl_newSVpvn_share DPPP_(my_newSVpvn_share)


SV *
DPPP_(my_newSVpvn_share)(pTHX_ const char *s, I32 len, U32 hash)
{
  SV *sv;
  if (len < 0)
    len = -len;
  if (!hash)
    PERL_HASH(hash, (char*) s, len);
  sv = newSVpvn((char *) s, len);
  sv_upgrade(sv, SVt_PVIV);
  SvIVX(sv) = hash;
  SvREADONLY_on(sv);
  SvPOK_on(sv);
  return sv;
}

#endif

#endif
#ifndef SvSHARED_HASH
#  define SvSHARED_HASH(sv)              (0 + SvUVX(sv))
#endif
#ifndef HvNAME_get
#  define HvNAME_get(hv)                 HvNAME(hv)
#endif
#ifndef HvNAMELEN_get
#  define HvNAMELEN_get(hv)              (HvNAME_get(hv) ? (I32)strlen(HvNAME_get(hv)) : 0)
#endif

#if (PERL_BCDVERSION >= 0x5009002) && (PERL_BCDVERSION <= 0x5009003) /* 5.9.2 and 5.9.3 ignore the length param */
#undef gv_fetchpvn_flags
#endif

#ifdef GV_NOADD_MASK
#  define D_PPP_GV_NOADD_MASK  GV_NOADD_MASK
#else
#  define D_PPP_GV_NOADD_MASK  0xE0
#endif
#ifndef gv_fetchpvn_flags
#  define gv_fetchpvn_flags(name, len, flags, sv_type) gv_fetchpv(SvPVX(sv_2mortal(newSVpvn((name), (len)))), ((flags) & D_PPP_GV_NOADD_MASK) ? FALSE : TRUE, (I32)(sv_type))
#endif
#ifndef GvSVn
#  define GvSVn(gv)                      GvSV(gv)
#endif

#ifndef isGV_with_GP
#  define isGV_with_GP(gv)               isGV(gv)
#endif

#ifndef gv_fetchsv
#  define gv_fetchsv(name, flags, svt)   gv_fetchpv(SvPV_nolen_const(name), flags, svt)
#endif
#ifndef get_cvn_flags
#  define get_cvn_flags(name, namelen, flags) get_cv(name, flags)
#endif

#ifndef gv_init_pvn
#  define gv_init_pvn(gv, stash, ptr, len, flags) gv_init(gv, stash, ptr, len, flags & GV_ADDMULTI ? TRUE : FALSE)
#endif

/* concatenating with "" ensures that only literal strings are accepted as argument
 * note that STR_WITH_LEN() can't be used as argument to macros or functions that
 * under some configurations might be macros
 */
#ifndef STR_WITH_LEN
#  define STR_WITH_LEN(s)                (s ""), (sizeof(s)-1)
#endif
#ifndef newSVpvs
#  define newSVpvs(str)                  newSVpvn(str "", sizeof(str) - 1)
#endif

#ifndef newSVpvs_flags
#  define newSVpvs_flags(str, flags)     newSVpvn_flags(str "", sizeof(str) - 1, flags)
#endif

#ifndef newSVpvs_share
#  define newSVpvs_share(str)            newSVpvn_share(str "", sizeof(str) - 1, 0)
#endif

#ifndef sv_catpvs
#  define sv_catpvs(sv, str)             sv_catpvn(sv, str "", sizeof(str) - 1)
#endif

#ifndef sv_setpvs
#  define sv_setpvs(sv, str)             sv_setpvn(sv, str "", sizeof(str) - 1)
#endif

#ifndef hv_fetchs
#  define hv_fetchs(hv, key, lval)       hv_fetch(hv, key "", sizeof(key) - 1, lval)
#endif

#ifndef hv_stores
#  define hv_stores(hv, key, val)        hv_store(hv, key "", sizeof(key) - 1, val, 0)
#endif
#ifndef gv_fetchpvs
#  define gv_fetchpvs(name, flags, svt)  gv_fetchpvn_flags(name "", sizeof(name) - 1, flags, svt)
#endif

#ifndef gv_stashpvs
#  define gv_stashpvs(name, flags)       gv_stashpvn(name "", sizeof(name) - 1, flags)
#endif
#ifndef get_cvs
#  define get_cvs(name, flags)           get_cvn_flags(name "", sizeof(name)-1, flags)
#endif

#undef  SvGETMAGIC
#ifndef SvGETMAGIC
#  define SvGETMAGIC(x)                  ((void)(UNLIKELY(SvGMAGICAL(x)) && mg_get(x)))
#endif

/* That's the best we can do... */
#ifndef sv_catpvn_nomg
#  define sv_catpvn_nomg                 sv_catpvn
#endif

#ifndef sv_catsv_nomg
#  define sv_catsv_nomg                  sv_catsv
#endif

#ifndef sv_setsv_nomg
#  define sv_setsv_nomg                  sv_setsv
#endif

#ifndef sv_pvn_nomg
#  define sv_pvn_nomg                    sv_pvn
#endif

#ifdef SVf_IVisUV
#if defined(PERL_USE_GCC_BRACE_GROUPS)
#ifndef SvIV_nomg
#  define SvIV_nomg(sv)                  (!SvGMAGICAL((sv)) ? SvIV((sv)) : ({ SV *_sviv = sv_mortalcopy_flags((sv), SV_NOSTEAL); IV _iv = SvIV(_sviv); SvFLAGS((sv)) = (SvFLAGS((sv)) & ~SVf_IVisUV) | (SvFLAGS(_sviv) & SVf_IVisUV); _iv; }))
#endif

#ifndef SvUV_nomg
#  define SvUV_nomg(sv)                  (!SvGMAGICAL((sv)) ? SvUV((sv)) : ({ SV *_svuv = sv_mortalcopy_flags((sv), SV_NOSTEAL); UV _uv = SvUV(_svuv); SvFLAGS((sv)) = (SvFLAGS((sv)) & ~SVf_IVisUV) | (SvFLAGS(_svuv) & SVf_IVisUV); _uv; }))
#endif

#else
#ifndef SvIV_nomg
#  define SvIV_nomg(sv)                  (!SvGMAGICAL((sv)) ? SvIV((sv)) : ((PL_Sv = sv_mortalcopy_flags((sv), SV_NOSTEAL)), sv_upgrade(PL_Sv, SVt_PVIV), (SvIVX(PL_Sv) = SvIV(PL_Sv)), (SvFLAGS((sv)) = (SvFLAGS((sv)) & ~SVf_IVisUV) | (SvFLAGS(PL_Sv) &...
#endif

#ifndef SvUV_nomg
#  define SvUV_nomg(sv)                  (!SvGMAGICAL((sv)) ? SvIV((sv)) : ((PL_Sv = sv_mortalcopy_flags((sv), SV_NOSTEAL)), sv_upgrade(PL_Sv, SVt_PVIV), (SvUVX(PL_Sv) = SvUV(PL_Sv)), (SvFLAGS((sv)) = (SvFLAGS((sv)) & ~SVf_IVisUV) | (SvFLAGS(PL_Sv) &...
#endif

#endif
#else
#ifndef SvIV_nomg
#  define SvIV_nomg(sv)                  (!SvGMAGICAL((sv)) ? SvIV((sv)) : SvIVx(sv_mortalcopy_flags((sv), SV_NOSTEAL)))
#endif

#ifndef SvUV_nomg
#  define SvUV_nomg(sv)                  (!SvGMAGICAL((sv)) ? SvUV((sv)) : SvUVx(sv_mortalcopy_flags((sv), SV_NOSTEAL)))
#endif

#endif
#ifndef SvNV_nomg
#  define SvNV_nomg(sv)                  (!SvGMAGICAL((sv)) ? SvNV((sv)) : SvNVx(sv_mortalcopy_flags((sv), SV_NOSTEAL)))
#endif

#ifndef SvTRUE_nomg
#  define SvTRUE_nomg(sv)                (!SvGMAGICAL((sv)) ? SvTRUE((sv)) : SvTRUEx(sv_mortalcopy_flags((sv), SV_NOSTEAL)))
#endif

#ifndef sv_catpv_mg
#  define sv_catpv_mg(sv, ptr)          \
   STMT_START {                         \
     SV *TeMpSv = sv;                   \
     sv_catpv(TeMpSv,ptr);              \
     SvSETMAGIC(TeMpSv);                \
   } STMT_END
#endif

#ifndef sv_catpvn_mg
#  define sv_catpvn_mg(sv, ptr, len)    \
   STMT_START {                         \
     SV *TeMpSv = sv;                   \
     sv_catpvn(TeMpSv,ptr,len);         \
     SvSETMAGIC(TeMpSv);                \
   } STMT_END
#endif

#ifndef sv_catsv_mg
#  define sv_catsv_mg(dsv, ssv)         \
   STMT_START {                         \
     SV *TeMpSv = dsv;                  \
     sv_catsv(TeMpSv,ssv);              \
     SvSETMAGIC(TeMpSv);                \
   } STMT_END
#endif

#ifndef sv_setiv_mg
#  define sv_setiv_mg(sv, i)            \
   STMT_START {                         \
     SV *TeMpSv = sv;                   \
     sv_setiv(TeMpSv,i);                \
     SvSETMAGIC(TeMpSv);                \
   } STMT_END
#endif

#ifndef sv_setnv_mg
#  define sv_setnv_mg(sv, num)          \
   STMT_START {                         \
     SV *TeMpSv = sv;                   \
     sv_setnv(TeMpSv,num);              \
     SvSETMAGIC(TeMpSv);                \
   } STMT_END
#endif

#ifndef sv_setpv_mg
#  define sv_setpv_mg(sv, ptr)          \
   STMT_START {                         \
     SV *TeMpSv = sv;                   \
     sv_setpv(TeMpSv,ptr);              \
     SvSETMAGIC(TeMpSv);                \
   } STMT_END
#endif

#ifndef sv_setpvn_mg
#  define sv_setpvn_mg(sv, ptr, len)    \
   STMT_START {                         \
     SV *TeMpSv = sv;                   \

ppport.h  view on Meta::CPAN

DPPP_(my_mg_findext)(const SV * sv, int type, const MGVTBL *vtbl) {
    if (sv) {
        MAGIC *mg;

#ifdef AvPAD_NAMELIST
        assert(!(SvTYPE(sv) == SVt_PVAV && AvPAD_NAMELIST(sv)));
#endif

        for (mg = SvMAGIC (sv); mg; mg = mg->mg_moremagic) {
            if (mg->mg_type == type && mg->mg_virtual == vtbl)
                return mg;
        }
    }

    return NULL;
}

#endif
#endif

#if !defined(sv_unmagicext)
#if defined(NEED_sv_unmagicext)
static int DPPP_(my_sv_unmagicext)(pTHX_ SV * const sv, const int type, MGVTBL * vtbl);
static
#else
extern int DPPP_(my_sv_unmagicext)(pTHX_ SV * const sv, const int type, MGVTBL * vtbl);
#endif

#if defined(NEED_sv_unmagicext) || defined(NEED_sv_unmagicext_GLOBAL)

#ifdef sv_unmagicext
#  undef sv_unmagicext
#endif
#define sv_unmagicext(a,b,c) DPPP_(my_sv_unmagicext)(aTHX_ a,b,c)
#define Perl_sv_unmagicext DPPP_(my_sv_unmagicext)


int
DPPP_(my_sv_unmagicext)(pTHX_ SV *const sv, const int type, MGVTBL *vtbl)
{
    MAGIC* mg;
    MAGIC** mgp;

    if (SvTYPE(sv) < SVt_PVMG || !SvMAGIC(sv))
	return 0;
    mgp = &(SvMAGIC(sv));
    for (mg = *mgp; mg; mg = *mgp) {
	const MGVTBL* const virt = mg->mg_virtual;
	if (mg->mg_type == type && virt == vtbl) {
	    *mgp = mg->mg_moremagic;
	    if (virt && virt->svt_free)
		virt->svt_free(aTHX_ sv, mg);
	    if (mg->mg_ptr && mg->mg_type != PERL_MAGIC_regex_global) {
		if (mg->mg_len > 0)
		    Safefree(mg->mg_ptr);
		else if (mg->mg_len == HEf_SVKEY) /* Questionable on older perls... */
		    SvREFCNT_dec(MUTABLE_SV(mg->mg_ptr));
		else if (mg->mg_type == PERL_MAGIC_utf8)
		    Safefree(mg->mg_ptr);
            }
	    if (mg->mg_flags & MGf_REFCOUNTED)
		SvREFCNT_dec(mg->mg_obj);
	    Safefree(mg);
	}
	else
	    mgp = &mg->mg_moremagic;
    }
    if (SvMAGIC(sv)) {
	if (SvMAGICAL(sv))	/* if we're under save_magic, wait for restore_magic; */
	    mg_magical(sv);	/*    else fix the flags now */
    }
    else {
	SvMAGICAL_off(sv);
	SvFLAGS(sv) |= (SvFLAGS(sv) & (SVp_IOK|SVp_NOK|SVp_POK)) >> PRIVSHIFT;
    }
    return 0;
}

#endif
#endif

#ifdef USE_ITHREADS
#ifndef CopFILE
#  define CopFILE(c)                     ((c)->cop_file)
#endif

#ifndef CopFILEGV
#  define CopFILEGV(c)                   (CopFILE(c) ? gv_fetchfile(CopFILE(c)) : Nullgv)
#endif

#ifndef CopFILE_set
#  define CopFILE_set(c,pv)              ((c)->cop_file = savepv(pv))
#endif

#ifndef CopFILESV
#  define CopFILESV(c)                   (CopFILE(c) ? GvSV(gv_fetchfile(CopFILE(c))) : Nullsv)
#endif

#ifndef CopFILEAV
#  define CopFILEAV(c)                   (CopFILE(c) ? GvAV(gv_fetchfile(CopFILE(c))) : Nullav)
#endif

#ifndef CopSTASHPV
#  define CopSTASHPV(c)                  ((c)->cop_stashpv)
#endif

#ifndef CopSTASHPV_set
#  define CopSTASHPV_set(c,pv)           ((c)->cop_stashpv = ((pv) ? savepv(pv) : Nullch))
#endif

#ifndef CopSTASH
#  define CopSTASH(c)                    (CopSTASHPV(c) ? gv_stashpv(CopSTASHPV(c),GV_ADD) : Nullhv)
#endif

#ifndef CopSTASH_set
#  define CopSTASH_set(c,hv)             CopSTASHPV_set(c, (hv) ? HvNAME(hv) : Nullch)
#endif

#ifndef CopSTASH_eq
#  define CopSTASH_eq(c,hv)              ((hv) && (CopSTASHPV(c) == HvNAME(hv) \
                                        || (CopSTASHPV(c) && HvNAME(hv) \
                                        && strEQ(CopSTASHPV(c), HvNAME(hv)))))
#endif

#else
#ifndef CopFILEGV
#  define CopFILEGV(c)                   ((c)->cop_filegv)
#endif

#ifndef CopFILEGV_set

ppport.h  view on Meta::CPAN

              }
            }
          }
        }
      }
    }
    numtype |= IS_NUMBER_IN_UV;
    if (valuep)
      *valuep = value;

  skip_value:
    if (GROK_NUMERIC_RADIX(&s, send)) {
      numtype |= IS_NUMBER_NOT_INT;
      while (s < send && isDIGIT(*s))  /* optional digits after the radix */
        s++;
    }
  }
  else if (GROK_NUMERIC_RADIX(&s, send)) {
    numtype |= IS_NUMBER_NOT_INT | IS_NUMBER_IN_UV; /* valuep assigned below */
    /* no digits before the radix means we need digits after it */
    if (s < send && isDIGIT(*s)) {
      do {
        s++;
      } while (s < send && isDIGIT(*s));
      if (valuep) {
        /* integer approximation is valid - it's 0.  */
        *valuep = 0;
      }
    }
    else
      return 0;
  } else if (*s == 'I' || *s == 'i') {
    s++; if (s == send || (*s != 'N' && *s != 'n')) return 0;
    s++; if (s == send || (*s != 'F' && *s != 'f')) return 0;
    s++; if (s < send && (*s == 'I' || *s == 'i')) {
      s++; if (s == send || (*s != 'N' && *s != 'n')) return 0;
      s++; if (s == send || (*s != 'I' && *s != 'i')) return 0;
      s++; if (s == send || (*s != 'T' && *s != 't')) return 0;
      s++; if (s == send || (*s != 'Y' && *s != 'y')) return 0;
      s++;
    }
    sawinf = 1;
  } else if (*s == 'N' || *s == 'n') {
    /* XXX TODO: There are signaling NaNs and quiet NaNs. */
    s++; if (s == send || (*s != 'A' && *s != 'a')) return 0;
    s++; if (s == send || (*s != 'N' && *s != 'n')) return 0;
    s++;
    sawnan = 1;
  } else
    return 0;

  if (sawinf) {
    numtype &= IS_NUMBER_NEG; /* Keep track of sign  */
    numtype |= IS_NUMBER_INFINITY | IS_NUMBER_NOT_INT;
  } else if (sawnan) {
    numtype &= IS_NUMBER_NEG; /* Keep track of sign  */
    numtype |= IS_NUMBER_NAN | IS_NUMBER_NOT_INT;
  } else if (s < send) {
    /* we can have an optional exponent part */
    if (*s == 'e' || *s == 'E') {
      /* The only flag we keep is sign.  Blow away any "it's UV"  */
      numtype &= IS_NUMBER_NEG;
      numtype |= IS_NUMBER_NOT_INT;
      s++;
      if (s < send && (*s == '-' || *s == '+'))
        s++;
      if (s < send && isDIGIT(*s)) {
        do {
          s++;
        } while (s < send && isDIGIT(*s));
      }
      else
      return 0;
    }
  }
  while (s < send && isSPACE(*s))
    s++;
  if (s >= send)
    return numtype;
  if (len == 10 && memEQ(pv, "0 but true", 10)) {
    if (valuep)
      *valuep = 0;
    return IS_NUMBER_IN_UV;
  }
  return 0;
}
#endif
#endif

/*
 * The grok_* routines have been modified to use warn() instead of
 * Perl_warner(). Also, 'hexdigit' was the former name of PL_hexdigit,
 * which is why the stack variable has been renamed to 'xdigit'.
 */

#ifndef grok_bin
#if defined(NEED_grok_bin)
static UV DPPP_(my_grok_bin)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result);
static
#else
extern UV DPPP_(my_grok_bin)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result);
#endif

#if defined(NEED_grok_bin) || defined(NEED_grok_bin_GLOBAL)

#ifdef grok_bin
#  undef grok_bin
#endif
#define grok_bin(a,b,c,d) DPPP_(my_grok_bin)(aTHX_ a,b,c,d)
#define Perl_grok_bin DPPP_(my_grok_bin)

UV
DPPP_(my_grok_bin)(pTHX_ const char *start, STRLEN *len_p, I32 *flags, NV *result)
{
    const char *s = start;
    STRLEN len = *len_p;
    UV value = 0;
    NV value_nv = 0;

    const UV max_div_2 = UV_MAX / 2;
    bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES;
    bool overflowed = FALSE;

    if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) {
        /* strip off leading b or 0b.
           for compatibility silently suffer "b" and "0b" as valid binary
           numbers. */
        if (len >= 1) {
            if (s[0] == 'b') {
                s++;
                len--;
            }
            else if (len >= 2 && s[0] == '0' && s[1] == 'b') {
                s+=2;
                len-=2;
            }
        }
    }

    for (; len-- && *s; s++) {
        char bit = *s;
        if (bit == '0' || bit == '1') {
            /* Write it in this wonky order with a goto to attempt to get the
               compiler to make the common case integer-only loop pretty tight.
               With gcc seems to be much straighter code than old scan_bin.  */
          redo:
            if (!overflowed) {
                if (value <= max_div_2) {
                    value = (value << 1) | (bit - '0');
                    continue;
                }
                /* Bah. We're just overflowed.  */
                warn("Integer overflow in binary number");
                overflowed = TRUE;
                value_nv = (NV) value;
            }
            value_nv *= 2.0;
            /* If an NV has not enough bits in its mantissa to
             * represent a UV this summing of small low-order numbers
             * is a waste of time (because the NV cannot preserve
             * the low-order bits anyway): we could just remember when
             * did we overflow and in the end just multiply value_nv by the
             * right amount. */
            value_nv += (NV)(bit - '0');
            continue;
        }
        if (bit == '_' && len && allow_underscores && (bit = s[1])
            && (bit == '0' || bit == '1'))
            {
                --len;
                ++s;
                goto redo;
            }
        if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT))
            warn("Illegal binary digit '%c' ignored", *s);
        break;
    }

    if (   ( overflowed && value_nv > 4294967295.0)
#if UVSIZE > 4
        || (!overflowed && value > 0xffffffff  )
#endif
        ) {
        warn("Binary number > 0b11111111111111111111111111111111 non-portable");
    }
    *len_p = s - start;
    if (!overflowed) {
        *flags = 0;
        return value;
    }
    *flags = PERL_SCAN_GREATER_THAN_UV_MAX;
    if (result)
        *result = value_nv;
    return UV_MAX;
}
#endif
#endif

#ifndef grok_hex
#if defined(NEED_grok_hex)
static UV DPPP_(my_grok_hex)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result);
static
#else
extern UV DPPP_(my_grok_hex)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result);
#endif

#if defined(NEED_grok_hex) || defined(NEED_grok_hex_GLOBAL)

#ifdef grok_hex
#  undef grok_hex
#endif
#define grok_hex(a,b,c,d) DPPP_(my_grok_hex)(aTHX_ a,b,c,d)
#define Perl_grok_hex DPPP_(my_grok_hex)

UV
DPPP_(my_grok_hex)(pTHX_ const char *start, STRLEN *len_p, I32 *flags, NV *result)
{
    const char *s = start;
    STRLEN len = *len_p;
    UV value = 0;
    NV value_nv = 0;

    const UV max_div_16 = UV_MAX / 16;
    bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES;
    bool overflowed = FALSE;
    const char *xdigit;

    if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) {
        /* strip off leading x or 0x.
           for compatibility silently suffer "x" and "0x" as valid hex numbers.
        */
        if (len >= 1) {
            if (s[0] == 'x') {
                s++;
                len--;
            }
            else if (len >= 2 && s[0] == '0' && s[1] == 'x') {
                s+=2;
                len-=2;
            }
        }
    }

    for (; len-- && *s; s++) {
        xdigit = strchr((char *) PL_hexdigit, *s);
        if (xdigit) {
            /* Write it in this wonky order with a goto to attempt to get the
               compiler to make the common case integer-only loop pretty tight.
               With gcc seems to be much straighter code than old scan_hex.  */
          redo:
            if (!overflowed) {
                if (value <= max_div_16) {
                    value = (value << 4) | ((xdigit - PL_hexdigit) & 15);
                    continue;
                }
                warn("Integer overflow in hexadecimal number");
                overflowed = TRUE;
                value_nv = (NV) value;
            }
            value_nv *= 16.0;
            /* If an NV has not enough bits in its mantissa to
             * represent a UV this summing of small low-order numbers
             * is a waste of time (because the NV cannot preserve
             * the low-order bits anyway): we could just remember when
             * did we overflow and in the end just multiply value_nv by the
             * right amount of 16-tuples. */
            value_nv += (NV)((xdigit - PL_hexdigit) & 15);
            continue;
        }
        if (*s == '_' && len && allow_underscores && s[1]
                && (xdigit = strchr((char *) PL_hexdigit, s[1])))
            {
                --len;
                ++s;
                goto redo;
            }
        if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT))
            warn("Illegal hexadecimal digit '%c' ignored", *s);
        break;
    }

    if (   ( overflowed && value_nv > 4294967295.0)
#if UVSIZE > 4
        || (!overflowed && value > 0xffffffff  )
#endif
        ) {
        warn("Hexadecimal number > 0xffffffff non-portable");
    }
    *len_p = s - start;
    if (!overflowed) {
        *flags = 0;
        return value;
    }
    *flags = PERL_SCAN_GREATER_THAN_UV_MAX;
    if (result)
        *result = value_nv;
    return UV_MAX;
}
#endif
#endif

#ifndef grok_oct
#if defined(NEED_grok_oct)
static UV DPPP_(my_grok_oct)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result);
static
#else
extern UV DPPP_(my_grok_oct)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result);
#endif

#if defined(NEED_grok_oct) || defined(NEED_grok_oct_GLOBAL)

#ifdef grok_oct
#  undef grok_oct
#endif
#define grok_oct(a,b,c,d) DPPP_(my_grok_oct)(aTHX_ a,b,c,d)
#define Perl_grok_oct DPPP_(my_grok_oct)

UV
DPPP_(my_grok_oct)(pTHX_ const char *start, STRLEN *len_p, I32 *flags, NV *result)
{
    const char *s = start;
    STRLEN len = *len_p;
    UV value = 0;
    NV value_nv = 0;

    const UV max_div_8 = UV_MAX / 8;
    bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES;
    bool overflowed = FALSE;

    for (; len-- && *s; s++) {
         /* gcc 2.95 optimiser not smart enough to figure that this subtraction
            out front allows slicker code.  */
        int digit = *s - '0';
        if (digit >= 0 && digit <= 7) {
            /* Write it in this wonky order with a goto to attempt to get the
               compiler to make the common case integer-only loop pretty tight.
            */
          redo:
            if (!overflowed) {
                if (value <= max_div_8) {
                    value = (value << 3) | digit;
                    continue;
                }
                /* Bah. We're just overflowed.  */
                warn("Integer overflow in octal number");
                overflowed = TRUE;
                value_nv = (NV) value;
            }
            value_nv *= 8.0;
            /* If an NV has not enough bits in its mantissa to
             * represent a UV this summing of small low-order numbers
             * is a waste of time (because the NV cannot preserve
             * the low-order bits anyway): we could just remember when
             * did we overflow and in the end just multiply value_nv by the
             * right amount of 8-tuples. */
            value_nv += (NV)digit;
            continue;
        }
        if (digit == ('_' - '0') && len && allow_underscores
            && (digit = s[1] - '0') && (digit >= 0 && digit <= 7))
            {
                --len;
                ++s;
                goto redo;
            }
        /* Allow \octal to work the DWIM way (that is, stop scanning
         * as soon as non-octal characters are seen, complain only iff
         * someone seems to want to use the digits eight and nine). */
        if (digit == 8 || digit == 9) {
            if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT))
                warn("Illegal octal digit '%c' ignored", *s);
        }
        break;
    }

    if (   ( overflowed && value_nv > 4294967295.0)
#if UVSIZE > 4
        || (!overflowed && value > 0xffffffff  )
#endif
        ) {
        warn("Octal number > 037777777777 non-portable");
    }
    *len_p = s - start;
    if (!overflowed) {
        *flags = 0;
        return value;
    }
    *flags = PERL_SCAN_GREATER_THAN_UV_MAX;
    if (result)
        *result = value_nv;
    return UV_MAX;
}
#endif
#endif

#if !defined(my_snprintf)
#if defined(NEED_my_snprintf)
static int DPPP_(my_my_snprintf)(char * buffer, const Size_t len, const char * format, ...);
static
#else
extern int DPPP_(my_my_snprintf)(char * buffer, const Size_t len, const char * format, ...);
#endif

#if defined(NEED_my_snprintf) || defined(NEED_my_snprintf_GLOBAL)

#define my_snprintf DPPP_(my_my_snprintf)
#define Perl_my_snprintf DPPP_(my_my_snprintf)


int
DPPP_(my_my_snprintf)(char *buffer, const Size_t len, const char *format, ...)
{
    dTHX;
    int retval;
    va_list ap;
    va_start(ap, format);
#ifdef HAS_VSNPRINTF
    retval = vsnprintf(buffer, len, format, ap);
#else
    retval = vsprintf(buffer, format, ap);
#endif
    va_end(ap);
    if (retval < 0 || (len > 0 && (Size_t)retval >= len))
        Perl_croak(aTHX_ "panic: my_snprintf buffer overflow");
    return retval;
}

#endif
#endif

#if !defined(my_sprintf)
#if defined(NEED_my_sprintf)
static int DPPP_(my_my_sprintf)(char * buffer, const char * pat, ...);
static
#else
extern int DPPP_(my_my_sprintf)(char * buffer, const char * pat, ...);
#endif

#if defined(NEED_my_sprintf) || defined(NEED_my_sprintf_GLOBAL)

#define my_sprintf DPPP_(my_my_sprintf)


/* Warning: my_sprintf
   It's safer to use my_snprintf instead
*/

/* Replace my_sprintf with my_snprintf */

ppport.h  view on Meta::CPAN

    used = strlen(dst);
    length = strlen(src);
    if (size > 0 && used < size - 1) {
        copy = (length >= size - used) ? size - used - 1 : length;
        memcpy(dst + used, src, copy);
        dst[used + copy] = '\0';
    }
    return used + length;
}
#endif
#endif

#if !defined(my_strlcpy)
#if defined(NEED_my_strlcpy)
static Size_t DPPP_(my_my_strlcpy)(char * dst, const char * src, Size_t size);
static
#else
extern Size_t DPPP_(my_my_strlcpy)(char * dst, const char * src, Size_t size);
#endif

#if defined(NEED_my_strlcpy) || defined(NEED_my_strlcpy_GLOBAL)

#define my_strlcpy DPPP_(my_my_strlcpy)
#define Perl_my_strlcpy DPPP_(my_my_strlcpy)


Size_t
DPPP_(my_my_strlcpy)(char *dst, const char *src, Size_t size)
{
    Size_t length, copy;

    length = strlen(src);
    if (size > 0) {
        copy = (length >= size) ? size - 1 : length;
        memcpy(dst, src, copy);
        dst[copy] = '\0';
    }
    return length;
}

#endif
#endif

#ifdef SVf_UTF8
#ifndef SvUTF8
#  define SvUTF8(sv)                     (SvFLAGS(sv) & SVf_UTF8)
#endif

#endif

#if (PERL_BCDVERSION == 0x5019001) /* 5.19.1 does not have UTF8fARG, only broken UTF8f */
#undef UTF8f
#endif

#ifdef SVf_UTF8
#ifndef UTF8f
#  define UTF8f                          SVf
#endif

#ifndef UTF8fARG
#  define UTF8fARG(u,l,p)                newSVpvn_flags((p), (l), ((u) ? SVf_UTF8 : 0) | SVs_TEMP)
#endif

#endif

#define D_PPP_MIN(a,b) (((a) <= (b)) ? (a) : (b))
#ifndef UNICODE_REPLACEMENT
#  define UNICODE_REPLACEMENT            0xFFFD
#endif

#ifdef UTF8_MAXLEN
#ifndef UTF8_MAXBYTES
#  define UTF8_MAXBYTES                  UTF8_MAXLEN
#endif

#endif
#ifndef UTF_START_MARK
#  define UTF_START_MARK(len)            \
                    (((len) >  7) ? 0xFF : (0xFF & (0xFE << (7-(len)))))
#endif

/* On non-EBCDIC was valid for some releases earlier than this, but easier to
 * just do one check */
#if (PERL_BCDVERSION < 0x5018000)
#  undef UTF8_MAXBYTES_CASE
#endif

#if 'A' == 65
#  define D_PPP_BYTE_INFO_BITS 6  /* 6 bits meaningful in continuation bytes */
#ifndef UTF8_MAXBYTES_CASE
#  define UTF8_MAXBYTES_CASE             13
#endif

#else
#  define D_PPP_BYTE_INFO_BITS 5  /* 5 bits meaningful in continuation bytes */
#ifndef UTF8_MAXBYTES_CASE
#  define UTF8_MAXBYTES_CASE             15
#endif

#endif
#ifndef UTF_ACCUMULATION_SHIFT
#  define UTF_ACCUMULATION_SHIFT         D_PPP_BYTE_INFO_BITS
#endif

#ifdef NATIVE_TO_UTF
#ifndef NATIVE_UTF8_TO_I8
#  define NATIVE_UTF8_TO_I8(c)           NATIVE_TO_UTF(c)
#endif

#else   /* System doesn't support EBCDIC */
#ifndef NATIVE_UTF8_TO_I8
#  define NATIVE_UTF8_TO_I8(c)           (c)
#endif

#endif

#ifdef UTF_TO_NATIVE
#ifndef I8_TO_NATIVE_UTF8
#  define I8_TO_NATIVE_UTF8(c)           UTF_TO_NATIVE(c)
#endif

ppport.h  view on Meta::CPAN


#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xEF\xBF\xBD"
#endif

#elif '^' == 95
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xDD\x73\x66\x73"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xDD\x73\x73\x71"
#endif

#elif '^' == 176
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xDD\x72\x65\x72"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xDD\x72\x72\x70"
#endif

#else
#  error Unknown character set
#endif

#if (PERL_BCDVERSION < 0x5035010)
        /* Versions prior to 5.31.4 accepted things that are now considered
         * malformations, and didn't return -1 on error with warnings enabled.
         * Versions before 5.35.10 dereferenced empty input without checking */
#  undef utf8_to_uvchr_buf
#endif

/* This implementation brings modern, generally more restricted standards to
 * utf8_to_uvchr_buf.  Some of these are security related, and clearly must
 * be done.  But its arguable that the others need not, and hence should not.
 * The reason they're here is that a module that intends to play with the
 * latest perls should be able to work the same in all releases.  An example is
 * that perl no longer accepts any UV for a code point, but limits them to
 * IV_MAX or below.  This is for future internal use of the larger code points.
 * If it turns out that some of these changes are breaking code that isn't
 * intended to work with modern perls, the tighter restrictions could be
 * relaxed.  khw thinks this is unlikely, but has been wrong in the past. */

/* 5.6.0 is the first release with UTF-8, and we don't implement this function
 * there due to its likely lack of still being in use, and the underlying
 * implementation is very different from later ones, without the later
 * safeguards, so would require extra work to deal with */
#if (PERL_BCDVERSION >= 0x5006001) && ! defined(utf8_to_uvchr_buf)
   /* Choose which underlying implementation to use.  At least one must be
    * present or the perl is too early to handle this function */
#  if defined(utf8n_to_uvchr) || defined(utf8_to_uvchr) || defined(utf8_to_uv)
#    if defined(utf8n_to_uvchr)   /* This is the preferred implementation */
#      define D_PPP_utf8_to_uvchr_buf_callee utf8n_to_uvchr
#    elif /* Must be at least 5.6.1 from #if above;                             \
             If have both regular and _simple, regular has all args */          \
          defined(utf8_to_uv) && defined(utf8_to_uv_simple)
#      define D_PPP_utf8_to_uvchr_buf_callee utf8_to_uv
#    elif defined(utf8_to_uvchr)  /* The below won't work well on error input */
#      define D_PPP_utf8_to_uvchr_buf_callee(s, curlen, retlen, flags)          \
                                            utf8_to_uvchr((U8 *)(s), (retlen))
#    else
#      define D_PPP_utf8_to_uvchr_buf_callee(s, curlen, retlen, flags)          \
                                            utf8_to_uv((U8 *)(s), (retlen))
#    endif
#  endif

#  if defined(NEED_utf8_to_uvchr_buf)
static UV DPPP_(my_utf8_to_uvchr_buf)(pTHX_ const U8 * s, const U8 * send, STRLEN * retlen);
static
#else
extern UV DPPP_(my_utf8_to_uvchr_buf)(pTHX_ const U8 * s, const U8 * send, STRLEN * retlen);
#endif

#if defined(NEED_utf8_to_uvchr_buf) || defined(NEED_utf8_to_uvchr_buf_GLOBAL)

#ifdef utf8_to_uvchr_buf
#  undef utf8_to_uvchr_buf
#endif
#define utf8_to_uvchr_buf(a,b,c) DPPP_(my_utf8_to_uvchr_buf)(aTHX_ a,b,c)
#define Perl_utf8_to_uvchr_buf DPPP_(my_utf8_to_uvchr_buf)


UV
DPPP_(my_utf8_to_uvchr_buf)(pTHX_ const U8 *s, const U8 *send, STRLEN *retlen)
{
#    if (PERL_BCDVERSION >= 0x5031004)   /* But from above, must be < 5.35.10 */
#      if (PERL_BCDVERSION != 0x5035009)

    /* Versions less than 5.35.9 could dereference s on zero length, so
     * pass it something where no harm comes from that. */
    if (send <= s) s = send = (U8 *) "?";
    return Perl_utf8_to_uvchr_buf_helper(aTHX_ s, send, retlen);

#      else /* Below is 5.35.9, which also works on non-empty input, but
               for empty input, can wrongly dereference, and additionally is
               also just plain broken */
    if (send > s) return Perl_utf8_to_uvchr_buf_helper(aTHX_ s, send, retlen);
    if (! ckWARN_d(WARN_UTF8)) {
        if (retlen) *retlen = 0;
        return UNICODE_REPLACEMENT;
    }
    else {
        s = send = (U8 *) "?";

        /* Call just for its warning */
        (void) Perl__utf8n_to_uvchr_msgs_helper(s, 0, NULL, 0, NULL, NULL);
        if (retlen) *retlen = (STRLEN) -1;
        return 0;
    }

#      endif
#    else

    UV ret;
    STRLEN curlen;
    bool overflows = 0;
    const U8 *cur_s = s;
    const bool do_warnings = ckWARN_d(WARN_UTF8);
#    if (PERL_BCDVERSION < 0x5026000) && ! defined(EBCDIC)
    STRLEN overflow_length = 0;
#    endif

ppport.h  view on Meta::CPAN

                do {
#        ifdef UTF8_IS_CONTINUATION
                    if (! UTF8_IS_CONTINUATION(s[i]))
#        else       /* Versions without the above don't support EBCDIC anyway */
                    if (s[i] < 0x80 || s[i] > 0xBF)
#        endif
                    {
                        *retlen = i;
                        break;
                    }
                } while (++i < *retlen);
            }

#      endif  /* end of < 5.16.0 */

        }
    }

    return ret;

#    endif    /* end of < 5.31.4 */

}

#  endif
#endif

#if defined(UTF8SKIP) && defined(utf8_to_uvchr_buf)
#undef utf8_to_uvchr /* Always redefine this unsafe function so that it refuses
                        to read past a NUL, making it much less likely to read
                        off the end of the buffer.  A NUL indicates the start
                        of the next character anyway.  If the input isn't
                        NUL-terminated, the function remains unsafe, as it
                        always has been. */
#ifndef utf8_to_uvchr
#  define utf8_to_uvchr(s, lp)           \
    ((*(s) == '\0')                                                             \
    ? utf8_to_uvchr_buf(s,((s)+1), lp) /* Handle single NUL specially */        \
    : utf8_to_uvchr_buf(s, (s) + UTF8_CHK_SKIP(s), (lp)))
#endif

#endif

/* Hint: utf8_to_uvchr
    Use utf8_to_uvchr_buf() instead.  But ONLY if you KNOW the upper bound
    of the input string (not resorting to using UTF8SKIP, etc., to infer it).
    The backported utf8_to_uvchr() will do a better job to prevent most cases
    of trying to read beyond the end of the buffer */

/* Replace utf8_to_uvchr with utf8_to_uvchr_buf */

#ifdef sv_len_utf8
#  if (PERL_BCDVERSION >= 0x5017005)
#    ifndef  sv_len_utf8_nomg
#      if defined(PERL_USE_GCC_BRACE_GROUPS)
#        define sv_len_utf8_nomg(sv)                                    \
            ({                                                          \
                SV *sv_ = (sv);                                         \
                sv_len_utf8(!SvGMAGICAL(sv_)                            \
                            ? sv_                                       \
                            : sv_mortalcopy_flags(sv_, SV_NOSTEAL));    \
            })
#      else
         PERL_STATIC_INLINE STRLEN D_PPP_sv_len_utf8_nomg(SV * sv)
         {
             dTHX;
             if (SvGMAGICAL(sv))
                 return sv_len_utf8(sv_mortalcopy_flags(sv,
                                                        SV_NOSTEAL));
             else return sv_len_utf8(sv);
         }
#        define  sv_len_utf8_nomg(sv) D_PPP_sv_len_utf8_nomg(sv)
#      endif
#    endif
#  else /* < 5.17.5 */
    /* Older Perl versions have broken sv_len_utf8() when passed sv does not
     * have SVf_UTF8 flag set */
    /* Also note that SvGETMAGIC() may change presence of SVf_UTF8 flag */
#    undef sv_len_utf8
#    if defined(PERL_USE_GCC_BRACE_GROUPS)
#      define sv_len_utf8_nomg(sv)                                          \
        ({                                                                  \
            SV *sv2 = (sv);                                                 \
            STRLEN len;                                                     \
            if (SvUTF8(sv2)) {                                              \
                if (SvGMAGICAL(sv2))                                        \
                    len = Perl_sv_len_utf8(aTHX_                            \
                                           sv_mortalcopy_flags(sv2,         \
                                                               SV_NOSTEAL));\
                else                                                        \
                    len = Perl_sv_len_utf8(aTHX_ sv2);                      \
             }                                                              \
             else SvPV_nomg(sv2, len);                                      \
             len;                                                           \
       })
#      define sv_len_utf8(sv) ({ SV *_sv1 = (sv);                           \
                                 SvGETMAGIC(_sv1);                          \
                                 sv_len_utf8_nomg(_sv1);                    \
                              })
#    else   /* Below is no brace groups */
       PERL_STATIC_INLINE STRLEN D_PPP_sv_len_utf8_nomg(SV * sv)
       {
          dTHX;
          STRLEN len;
          if (SvUTF8(sv)) {
              if (SvGMAGICAL(sv))
                  len = Perl_sv_len_utf8(aTHX_
                                         sv_mortalcopy_flags(sv,
                                                             SV_NOSTEAL));
              else
                  len = Perl_sv_len_utf8(aTHX_ sv);
          }
          else SvPV_nomg(sv, len);
          return len;
       }
#      define sv_len_utf8_nomg(sv) D_PPP_sv_len_utf8_nomg(sv)

       PERL_STATIC_INLINE STRLEN D_PPP_sv_len_utf8(SV * sv)
       {
          dTHX;
          SvGETMAGIC(sv);
          return sv_len_utf8_nomg(sv);
       }
#      define sv_len_utf8(sv) D_PPP_sv_len_utf8(sv)
#    endif
#  endif    /* End of < 5.17.5 */
#endif
#ifndef PERL_PV_ESCAPE_QUOTE
#  define PERL_PV_ESCAPE_QUOTE           0x0001
#endif

#ifndef PERL_PV_PRETTY_QUOTE
#  define PERL_PV_PRETTY_QUOTE           PERL_PV_ESCAPE_QUOTE
#endif

#ifndef PERL_PV_PRETTY_ELLIPSES
#  define PERL_PV_PRETTY_ELLIPSES        0x0002
#endif

#ifndef PERL_PV_PRETTY_LTGT
#  define PERL_PV_PRETTY_LTGT            0x0004
#endif

#ifndef PERL_PV_ESCAPE_FIRSTCHAR
#  define PERL_PV_ESCAPE_FIRSTCHAR       0x0008
#endif

#ifndef PERL_PV_ESCAPE_UNI
#  define PERL_PV_ESCAPE_UNI             0x0100
#endif

#ifndef PERL_PV_ESCAPE_UNI_DETECT
#  define PERL_PV_ESCAPE_UNI_DETECT      0x0200
#endif

#ifndef PERL_PV_ESCAPE_ALL
#  define PERL_PV_ESCAPE_ALL             0x1000
#endif

#ifndef PERL_PV_ESCAPE_NOBACKSLASH
#  define PERL_PV_ESCAPE_NOBACKSLASH     0x2000
#endif

#ifndef PERL_PV_ESCAPE_NOCLEAR
#  define PERL_PV_ESCAPE_NOCLEAR         0x4000
#endif

#ifndef PERL_PV_ESCAPE_RE
#  define PERL_PV_ESCAPE_RE              0x8000
#endif

#ifndef PERL_PV_PRETTY_NOCLEAR
#  define PERL_PV_PRETTY_NOCLEAR         PERL_PV_ESCAPE_NOCLEAR
#endif
#ifndef PERL_PV_PRETTY_DUMP
#  define PERL_PV_PRETTY_DUMP            PERL_PV_PRETTY_ELLIPSES|PERL_PV_PRETTY_QUOTE
#endif

#ifndef PERL_PV_PRETTY_REGPROP
#  define PERL_PV_PRETTY_REGPROP         PERL_PV_PRETTY_ELLIPSES|PERL_PV_PRETTY_LTGT|PERL_PV_ESCAPE_RE
#endif

/* Hint: pv_escape
 * Note that unicode functionality is only backported to
 * those perl versions that support it. For older perl
 * versions, the implementation will fall back to bytes.
 */

#ifndef pv_escape
#if defined(NEED_pv_escape)
static char * DPPP_(my_pv_escape)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, STRLEN * const escaped, const U32 flags);
static
#else
extern char * DPPP_(my_pv_escape)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, STRLEN * const escaped, const U32 flags);
#endif

#if defined(NEED_pv_escape) || defined(NEED_pv_escape_GLOBAL)

#ifdef pv_escape
#  undef pv_escape
#endif
#define pv_escape(a,b,c,d,e,f) DPPP_(my_pv_escape)(aTHX_ a,b,c,d,e,f)
#define Perl_pv_escape DPPP_(my_pv_escape)


char *
DPPP_(my_pv_escape)(pTHX_ SV *dsv, char const * const str,
  const STRLEN count, const STRLEN max,
  STRLEN * const escaped, const U32 flags)
{
    const char esc = flags & PERL_PV_ESCAPE_RE ? '%' : '\\';
    const char dq = flags & PERL_PV_ESCAPE_QUOTE ? '"' : esc;
    char octbuf[32] = "%123456789ABCDF";
    STRLEN wrote = 0;
    STRLEN chsize = 0;
    STRLEN readsize = 1;
#if defined(is_utf8_string) && defined(utf8_to_uvchr_buf)
    bool isuni = flags & PERL_PV_ESCAPE_UNI ? 1 : 0;
#endif
    const char *pv  = str;
    const char * const end = pv + count;
    octbuf[0] = esc;

    if (!(flags & PERL_PV_ESCAPE_NOCLEAR))
        sv_setpvs(dsv, "");

#if defined(is_utf8_string) && defined(utf8_to_uvchr_buf)
    if ((flags & PERL_PV_ESCAPE_UNI_DETECT) && is_utf8_string((U8*)pv, count))
        isuni = 1;
#endif

    for (; pv < end && (!max || wrote < max) ; pv += readsize) {
        const UV u =
#if defined(is_utf8_string) && defined(utf8_to_uvchr_buf)
                     isuni ? utf8_to_uvchr_buf((U8*)pv, end, &readsize) :
#endif
                             (U8)*pv;
        const U8 c = (U8)u & 0xFF;

        if (u > 255 || (flags & PERL_PV_ESCAPE_ALL)) {
            if (flags & PERL_PV_ESCAPE_FIRSTCHAR)
                chsize = my_snprintf(octbuf, sizeof octbuf,
                                      "%" UVxf, u);
            else
                chsize = my_snprintf(octbuf, sizeof octbuf,
                                      "%cx{%" UVxf "}", esc, u);
        } else if (flags & PERL_PV_ESCAPE_NOBACKSLASH) {
            chsize = 1;
        } else {
            if (c == dq || c == esc || !isPRINT(c)) {
                chsize = 2;
                switch (c) {
                case '\\' : /* fallthrough */
                case '%'  : if (c == esc)
                                octbuf[1] = esc;
                            else
                                chsize = 1;
                            break;
                case '\v' : octbuf[1] = 'v'; break;
                case '\t' : octbuf[1] = 't'; break;
                case '\r' : octbuf[1] = 'r'; break;
                case '\n' : octbuf[1] = 'n'; break;
                case '\f' : octbuf[1] = 'f'; break;
                case '"'  : if (dq == '"')
                                octbuf[1] = '"';
                            else
                                chsize = 1;
                            break;
                default:    chsize = my_snprintf(octbuf, sizeof octbuf,
                                pv < end && isDIGIT((U8)*(pv+readsize))
                                ? "%c%03o" : "%c%o", esc, c);
                }
            } else {
                chsize = 1;
            }
        }
        if (max && wrote + chsize > max) {
            break;
        } else if (chsize > 1) {
            sv_catpvn(dsv, octbuf, chsize);
            wrote += chsize;
        } else {
            char tmp[2];
            my_snprintf(tmp, sizeof tmp, "%c", c);
            sv_catpvn(dsv, tmp, 1);
            wrote++;
        }
        if (flags & PERL_PV_ESCAPE_FIRSTCHAR)
            break;
    }
    if (escaped != NULL)
        *escaped= pv - str;
    return SvPVX(dsv);
}

#endif
#endif

#ifndef pv_pretty
#if defined(NEED_pv_pretty)
static char * DPPP_(my_pv_pretty)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, char const * const start_color, char const * const end_color, const U32 flags);
static
#else
extern char * DPPP_(my_pv_pretty)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, char const * const start_color, char const * const end_color, const U32 flags);
#endif

#if defined(NEED_pv_pretty) || defined(NEED_pv_pretty_GLOBAL)

#ifdef pv_pretty
#  undef pv_pretty
#endif
#define pv_pretty(a,b,c,d,e,f,g) DPPP_(my_pv_pretty)(aTHX_ a,b,c,d,e,f,g)
#define Perl_pv_pretty DPPP_(my_pv_pretty)


char *
DPPP_(my_pv_pretty)(pTHX_ SV *dsv, char const * const str, const STRLEN count,
  const STRLEN max, char const * const start_color, char const * const end_color,
  const U32 flags)
{
    const U8 dq = (flags & PERL_PV_PRETTY_QUOTE) ? '"' : '%';
    STRLEN escaped;

    if (!(flags & PERL_PV_PRETTY_NOCLEAR))
        sv_setpvs(dsv, "");

    if (dq == '"')
        sv_catpvs(dsv, "\"");
    else if (flags & PERL_PV_PRETTY_LTGT)
        sv_catpvs(dsv, "<");

    if (start_color != NULL)
        sv_catpv(dsv, D_PPP_CONSTPV_ARG(start_color));

    pv_escape(dsv, str, count, max, &escaped, flags | PERL_PV_ESCAPE_NOCLEAR);

    if (end_color != NULL)
        sv_catpv(dsv, D_PPP_CONSTPV_ARG(end_color));

    if (dq == '"')
        sv_catpvs(dsv, "\"");
    else if (flags & PERL_PV_PRETTY_LTGT)
        sv_catpvs(dsv, ">");

    if ((flags & PERL_PV_PRETTY_ELLIPSES) && escaped < count)
        sv_catpvs(dsv, "...");

    return SvPVX(dsv);
}

#endif
#endif

#ifndef pv_display
#if defined(NEED_pv_display)
static char * DPPP_(my_pv_display)(pTHX_ SV * dsv, const char * pv, STRLEN cur, STRLEN len, STRLEN pvlim);
static
#else
extern char * DPPP_(my_pv_display)(pTHX_ SV * dsv, const char * pv, STRLEN cur, STRLEN len, STRLEN pvlim);
#endif

#if defined(NEED_pv_display) || defined(NEED_pv_display_GLOBAL)

#ifdef pv_display
#  undef pv_display
#endif
#define pv_display(a,b,c,d,e) DPPP_(my_pv_display)(aTHX_ a,b,c,d,e)
#define Perl_pv_display DPPP_(my_pv_display)


char *
DPPP_(my_pv_display)(pTHX_ SV *dsv, const char *pv, STRLEN cur, STRLEN len, STRLEN pvlim)
{
    pv_pretty(dsv, pv, cur, pvlim, NULL, NULL, PERL_PV_PRETTY_DUMP);
    if (len > cur && pv[cur] == '\0')
        sv_catpvs(dsv, "\\0");
    return SvPVX(dsv);
}

#endif
#endif

#if PERL_VERSION_LT(5,27,9)
#ifndef LC_NUMERIC_LOCK
#  define LC_NUMERIC_LOCK
#endif

#ifndef LC_NUMERIC_UNLOCK
#  define LC_NUMERIC_UNLOCK
#endif

#  if PERL_VERSION_LT(5,19,0)
#    undef STORE_LC_NUMERIC_SET_STANDARD
#    undef RESTORE_LC_NUMERIC
#    undef DECLARATION_FOR_LC_NUMERIC_MANIPULATION
#    ifdef USE_LOCALE
#ifndef DECLARATION_FOR_LC_NUMERIC_MANIPULATION
#  define DECLARATION_FOR_LC_NUMERIC_MANIPULATION char *LoC_
#endif

#ifndef STORE_NUMERIC_SET_STANDARD
#  define STORE_NUMERIC_SET_STANDARD()   \
	 LoC_ = savepv(setlocale(LC_NUMERIC, NULL));  \
	 SAVEFREEPV(LoC_);                            \
	 setlocale(LC_NUMERIC, "C");



( run in 3.075 seconds using v1.01-cache-2.11-cpan-cdf2f3d4e48 )