Provided by: perl-doc_5.26.1-6ubuntu0.7_all bug

NAME

       Devel::PPPort - Perl/Pollution/Portability

SYNOPSIS

           Devel::PPPort::WriteFile();   # defaults to ./ppport.h
           Devel::PPPort::WriteFile('someheader.h');

           # Same as above but retrieve contents rather than write file
           my $contents = Devel::PPPort::GetFileContents();
           my $contents = Devel::PPPort::GetFileContents('someheader.h');

DESCRIPTION

       Perl's API has changed over time, gaining new features, new functions, increasing its
       flexibility, and reducing the impact on the C namespace environment (reduced pollution).
       The header file written by this module, typically ppport.h, attempts to bring some of the
       newer Perl API features to older versions of Perl, so that you can worry less about
       keeping track of old releases, but users can still reap the benefit.

       "Devel::PPPort" contains two functions, "WriteFile" and "GetFileContents".  "WriteFile"'s
       only purpose is to write the ppport.h C header file.  This file contains a series of
       macros and, if explicitly requested, functions that allow XS modules to be built using
       older versions of Perl. Currently, Perl versions from 5.003 to 5.20 are supported.

       "GetFileContents" can be used to retrieve the file contents rather than writing it out.

       This module is used by "h2xs" to write the file ppport.h.

   Why use ppport.h?
       You should use ppport.h in modern code so that your code will work with the widest range
       of Perl interpreters possible, without significant additional work.

       You should attempt older code to fully use ppport.h, because the reduced pollution of
       newer Perl versions is an important thing. It's so important that the old polluting ways
       of original Perl modules will not be supported very far into the future, and your module
       will almost certainly break! By adapting to it now, you'll gain compatibility and a sense
       of having done the electronic ecology some good.

   How to use ppport.h
       Don't direct the users of your module to download "Devel::PPPort".  They are most probably
       no XS writers. Also, don't make ppport.h optional. Rather, just take the most recent copy
       of ppport.h that you can find (e.g. by generating it with the latest "Devel::PPPort"
       release from CPAN), copy it into your project, adjust your project to use it, and
       distribute the header along with your module.

   Running ppport.h
       But ppport.h is more than just a C header. It's also a Perl script that can check your
       source code. It will suggest hints and portability notes, and can even make suggestions on
       how to change your code. You can run it like any other Perl program:

           perl ppport.h [options] [files]

       It also has embedded documentation, so you can use

           perldoc ppport.h

       to find out more about how to use it.

FUNCTIONS

   WriteFile
       "WriteFile" takes one optional argument. When called with one argument, it expects to be
       passed a filename. When called with no arguments, it defaults to the filename ppport.h.

       The function returns a true value if the file was written successfully.  Otherwise it
       returns a false value.

   GetFileContents
       "GetFileContents" behaves like "WriteFile" above, but returns the contents of the would-be
       file rather than writing it out.

COMPATIBILITY

       ppport.h supports Perl versions from 5.003 to 5.20 in threaded and non-threaded
       configurations.

   Provided Perl compatibility API
       The header file written by this module, typically ppport.h, provides access to the
       following elements of the Perl API that is not available in older Perl releases:

           _aMY_CXT
           _pMY_CXT
           aMY_CXT
           aMY_CXT_
           aTHX
           aTHX_
           aTHXR
           aTHXR_
           AvFILLp
           boolSV
           C_ARRAY_END
           C_ARRAY_LENGTH
           call_argv
           call_method
           call_pv
           call_sv
           caller_cx
           cBOOL
           ckWARN
           CopFILE
           CopFILE_set
           CopFILEAV
           CopFILEGV
           CopFILEGV_set
           CopFILESV
           CopSTASH
           CopSTASH_eq
           CopSTASH_set
           CopSTASHPV
           CopSTASHPV_set
           CopyD
           CPERLscope
           dAX
           dAXMARK
           DEFSV
           DEFSV_set
           dITEMS
           dMY_CXT
           dMY_CXT_SV
           dNOOP
           dTHR
           dTHX
           dTHXa
           dTHXoa
           dTHXR
           dUNDERBAR
           dVAR
           dXCPT
           dXSTARG
           END_EXTERN_C
           ERRSV
           eval_pv
           eval_sv
           EXTERN_C
           G_METHOD
           get_av
           get_cv
           get_cvs
           get_hv
           get_sv
           grok_bin
           grok_hex
           grok_number
           GROK_NUMERIC_RADIX
           grok_numeric_radix
           grok_oct
           gv_fetchpvn_flags
           gv_fetchpvs
           gv_stashpvn
           gv_stashpvs
           HEf_SVKEY
           HeUTF8
           hv_fetchs
           hv_stores
           HvNAME_get
           HvNAMELEN_get
           IN_LOCALE
           IN_LOCALE_COMPILETIME
           IN_LOCALE_RUNTIME
           IN_PERL_COMPILETIME
           INT2PTR
           IS_NUMBER_GREATER_THAN_UV_MAX
           IS_NUMBER_IN_UV
           IS_NUMBER_INFINITY
           IS_NUMBER_NAN
           IS_NUMBER_NEG
           IS_NUMBER_NOT_INT
           isALNUMC
           isASCII
           isBLANK
           isCNTRL
           isGRAPH
           isPRINT
           isPSXSPC
           isPUNCT
           isXDIGIT
           IVdf
           IVSIZE
           IVTYPE
           load_module
           memEQ
           memEQs
           memNE
           memNEs
           mg_findext
           MoveD
           mPUSHi
           mPUSHn
           mPUSHp
           mPUSHs
           mPUSHu
           MUTABLE_PTR
           MUTABLE_SV
           mXPUSHi
           mXPUSHn
           mXPUSHp
           mXPUSHs
           mXPUSHu
           MY_CXT
           MY_CXT_CLONE
           MY_CXT_INIT
           my_snprintf
           my_sprintf
           my_strlcat
           my_strlcpy
           newCONSTSUB
           newRV_inc
           newRV_noinc
           newSV_type
           newSVpvn
           newSVpvn_flags
           newSVpvn_share
           newSVpvn_utf8
           newSVpvs
           newSVpvs_flags
           newSVpvs_share
           newSVuv
           Newx
           Newxc
           Newxz
           NOOP
           NUM2PTR
           NVef
           NVff
           NVgf
           NVTYPE
           OpHAS_SIBLING
           OpLASTSIB_set
           OpMAYBESIB_set
           OpMORESIB_set
           OpSIBLING
           packWARN
           PERL_ABS
           PERL_BCDVERSION
           PERL_GCC_BRACE_GROUPS_FORBIDDEN
           PERL_HASH
           PERL_INT_MAX
           PERL_INT_MIN
           PERL_LONG_MAX
           PERL_LONG_MIN
           PERL_MAGIC_arylen
           PERL_MAGIC_backref
           PERL_MAGIC_bm
           PERL_MAGIC_collxfrm
           PERL_MAGIC_dbfile
           PERL_MAGIC_dbline
           PERL_MAGIC_defelem
           PERL_MAGIC_env
           PERL_MAGIC_envelem
           PERL_MAGIC_ext
           PERL_MAGIC_fm
           PERL_MAGIC_glob
           PERL_MAGIC_isa
           PERL_MAGIC_isaelem
           PERL_MAGIC_mutex
           PERL_MAGIC_nkeys
           PERL_MAGIC_overload
           PERL_MAGIC_overload_elem
           PERL_MAGIC_overload_table
           PERL_MAGIC_pos
           PERL_MAGIC_qr
           PERL_MAGIC_regdata
           PERL_MAGIC_regdatum
           PERL_MAGIC_regex_global
           PERL_MAGIC_shared
           PERL_MAGIC_shared_scalar
           PERL_MAGIC_sig
           PERL_MAGIC_sigelem
           PERL_MAGIC_substr
           PERL_MAGIC_sv
           PERL_MAGIC_taint
           PERL_MAGIC_tied
           PERL_MAGIC_tiedelem
           PERL_MAGIC_tiedscalar
           PERL_MAGIC_utf8
           PERL_MAGIC_uvar
           PERL_MAGIC_uvar_elem
           PERL_MAGIC_vec
           PERL_MAGIC_vstring
           PERL_PV_ESCAPE_ALL
           PERL_PV_ESCAPE_FIRSTCHAR
           PERL_PV_ESCAPE_NOBACKSLASH
           PERL_PV_ESCAPE_NOCLEAR
           PERL_PV_ESCAPE_QUOTE
           PERL_PV_ESCAPE_RE
           PERL_PV_ESCAPE_UNI
           PERL_PV_ESCAPE_UNI_DETECT
           PERL_PV_PRETTY_DUMP
           PERL_PV_PRETTY_ELLIPSES
           PERL_PV_PRETTY_LTGT
           PERL_PV_PRETTY_NOCLEAR
           PERL_PV_PRETTY_QUOTE
           PERL_PV_PRETTY_REGPROP
           PERL_QUAD_MAX
           PERL_QUAD_MIN
           PERL_REVISION
           PERL_SCAN_ALLOW_UNDERSCORES
           PERL_SCAN_DISALLOW_PREFIX
           PERL_SCAN_GREATER_THAN_UV_MAX
           PERL_SCAN_SILENT_ILLDIGIT
           PERL_SHORT_MAX
           PERL_SHORT_MIN
           PERL_SIGNALS_UNSAFE_FLAG
           PERL_SUBVERSION
           PERL_UCHAR_MAX
           PERL_UCHAR_MIN
           PERL_UINT_MAX
           PERL_UINT_MIN
           PERL_ULONG_MAX
           PERL_ULONG_MIN
           PERL_UNUSED_ARG
           PERL_UNUSED_CONTEXT
           PERL_UNUSED_DECL
           PERL_UNUSED_RESULT
           PERL_UNUSED_VAR
           PERL_UQUAD_MAX
           PERL_UQUAD_MIN
           PERL_USE_GCC_BRACE_GROUPS
           PERL_USHORT_MAX
           PERL_USHORT_MIN
           PERL_VERSION
           Perl_warner
           Perl_warner_nocontext
           PERLIO_FUNCS_CAST
           PERLIO_FUNCS_DECL
           PL_bufend
           PL_bufptr
           PL_compiling
           PL_copline
           PL_curcop
           PL_curstash
           PL_DBsignal
           PL_DBsingle
           PL_DBsub
           PL_DBtrace
           PL_debstash
           PL_defgv
           PL_diehook
           PL_dirty
           PL_dowarn
           PL_errgv
           PL_error_count
           PL_expect
           PL_hexdigit
           PL_hints
           PL_in_my
           PL_in_my_stash
           PL_laststatval
           PL_lex_state
           PL_lex_stuff
           PL_linestr
           PL_na
           PL_no_modify
           PL_parser
           PL_perl_destruct_level
           PL_perldb
           PL_ppaddr
           PL_rsfp
           PL_rsfp_filters
           PL_signals
           PL_stack_base
           PL_stack_sp
           PL_statcache
           PL_stdingv
           PL_Sv
           PL_sv_arenaroot
           PL_sv_no
           PL_sv_undef
           PL_sv_yes
           PL_tainted
           PL_tainting
           PL_tokenbuf
           pMY_CXT
           pMY_CXT_
           Poison
           PoisonFree
           PoisonNew
           PoisonWith
           pTHX
           pTHX_
           PTR2IV
           PTR2nat
           PTR2NV
           PTR2ul
           PTR2UV
           PTRV
           PUSHmortal
           PUSHu
           pv_display
           pv_escape
           pv_pretty
           SAVE_DEFSV
           START_EXTERN_C
           START_MY_CXT
           STMT_END
           STMT_START
           STR_WITH_LEN
           sv_2pv_flags
           sv_2pv_nolen
           sv_2pvbyte
           sv_2pvbyte_nolen
           sv_2uv
           sv_catpv_mg
           sv_catpvf_mg
           sv_catpvf_mg_nocontext
           sv_catpvn_mg
           sv_catpvn_nomg
           sv_catpvs
           sv_catsv_mg
           sv_catsv_nomg
           SV_CONST_RETURN
           SV_COW_DROP_PV
           SV_COW_SHARED_HASH_KEYS
           SV_GMAGIC
           SV_HAS_TRAILING_NUL
           SV_IMMEDIATE_UNREF
           sv_magic_portable
           SV_MUTABLE_RETURN
           SV_NOSTEAL
           sv_pvn_force_flags
           sv_pvn_nomg
           sv_setiv_mg
           sv_setnv_mg
           sv_setpv_mg
           sv_setpvf_mg
           sv_setpvf_mg_nocontext
           sv_setpvn_mg
           sv_setpvs
           sv_setsv_mg
           sv_setsv_nomg
           sv_setuv
           sv_setuv_mg
           SV_SMAGIC
           sv_unmagicext
           sv_usepvn_mg
           SV_UTF8_NO_ENCODING
           sv_uv
           sv_vcatpvf
           sv_vcatpvf_mg
           sv_vsetpvf
           sv_vsetpvf_mg
           SVf
           SVf_UTF8
           SVfARG
           SvGETMAGIC
           SvIV_nomg
           SvMAGIC_set
           SvPV_const
           SvPV_flags
           SvPV_flags_const
           SvPV_flags_const_nolen
           SvPV_flags_mutable
           SvPV_force
           SvPV_force_flags
           SvPV_force_flags_mutable
           SvPV_force_flags_nolen
           SvPV_force_mutable
           SvPV_force_nolen
           SvPV_force_nomg
           SvPV_force_nomg_nolen
           SvPV_mutable
           SvPV_nolen
           SvPV_nolen_const
           SvPV_nomg
           SvPV_nomg_const
           SvPV_nomg_const_nolen
           SvPV_nomg_nolen
           SvPV_renew
           SvPVbyte
           SvPVX_const
           SvPVX_mutable
           SvREFCNT_inc
           SvREFCNT_inc_NN
           SvREFCNT_inc_simple
           SvREFCNT_inc_simple_NN
           SvREFCNT_inc_simple_void
           SvREFCNT_inc_simple_void_NN
           SvREFCNT_inc_void
           SvREFCNT_inc_void_NN
           SvRV_set
           SvRX
           SvRXOK
           SvSHARED_HASH
           SvSTASH_set
           SvUOK
           SvUV
           SvUV_nomg
           SvUV_set
           SvUVX
           SvUVx
           SvUVXx
           SvVSTRING_mg
           UNDERBAR
           UTF8_MAXBYTES
           UVof
           UVSIZE
           UVTYPE
           UVuf
           UVXf
           UVxf
           vload_module
           vnewSVpvf
           WARN_ALL
           WARN_AMBIGUOUS
           WARN_ASSERTIONS
           WARN_BAREWORD
           WARN_CLOSED
           WARN_CLOSURE
           WARN_DEBUGGING
           WARN_DEPRECATED
           WARN_DIGIT
           WARN_EXEC
           WARN_EXITING
           WARN_GLOB
           WARN_INPLACE
           WARN_INTERNAL
           WARN_IO
           WARN_LAYER
           WARN_MALLOC
           WARN_MISC
           WARN_NEWLINE
           WARN_NUMERIC
           WARN_ONCE
           WARN_OVERFLOW
           WARN_PACK
           WARN_PARENTHESIS
           WARN_PIPE
           WARN_PORTABLE
           WARN_PRECEDENCE
           WARN_PRINTF
           WARN_PROTOTYPE
           WARN_QW
           WARN_RECURSION
           WARN_REDEFINE
           WARN_REGEXP
           WARN_RESERVED
           WARN_SEMICOLON
           WARN_SEVERE
           WARN_SIGNAL
           WARN_SUBSTR
           WARN_SYNTAX
           WARN_TAINT
           WARN_THREADS
           WARN_UNINITIALIZED
           WARN_UNOPENED
           WARN_UNPACK
           WARN_UNTIE
           WARN_UTF8
           WARN_VOID
           warner
           WIDEST_UTYPE
           XCPT_CATCH
           XCPT_RETHROW
           XCPT_TRY_END
           XCPT_TRY_START
           XPUSHmortal
           XPUSHu
           XSprePUSH
           XSPROTO
           XSRETURN
           XSRETURN_UV
           XST_mUV
           ZeroD

   Perl API not supported by ppport.h
       There is still a big part of the API not supported by ppport.h.  Either because it doesn't
       make sense to back-port that part of the API, or simply because it hasn't been implemented
       yet. Patches welcome!

       Here's a list of the currently unsupported API, and also the version of Perl below which
       it is unsupported:

       perl 5.24.0
             BhkDISABLE
             BhkENABLE
             BhkENTRY_set
             MULTICALL
             PERL_SYS_TERM
             POP_MULTICALL
             PUSH_MULTICALL
             PadARRAY
             PadMAX
             PadlistARRAY
             PadlistMAX
             PadlistNAMES
             PadlistNAMESARRAY
             PadlistNAMESMAX
             PadnameLEN
             PadnamePV
             PadnameREFCNT
             PadnameREFCNT_dec
             PadnameSV
             PadnamelistARRAY
             PadnamelistMAX
             PadnamelistREFCNT
             PadnamelistREFCNT_dec
             RESTORE_LC_NUMERIC
             STORE_LC_NUMERIC_FORCE_TO_UNDERLYING
             STORE_LC_NUMERIC_SET_TO_NEEDED
             XS_APIVERSION_BOOTCHECK
             XS_EXTERNAL
             XS_INTERNAL
             XS_VERSION_BOOTCHECK
             XopDISABLE
             XopENABLE
             XopENTRY
             XopENTRYCUSTOM
             XopENTRY_set
             cophh_new_empty
             my_lstat
             my_stat
             reentrant_free
             reentrant_init
             reentrant_retry
             reentrant_size
             ref
             sv_setref_pvs

       perl 5.23.9
             toFOLD_uvchr
             toLOWER_uvchr
             toTITLE_uvchr
             toUPPER_uvchr

       perl 5.23.8
             clear_defarray
             cx_popblock
             cx_popeval
             cx_popformat
             cx_popgiven
             cx_poploop
             cx_popsub
             cx_popsub_args
             cx_popsub_common
             cx_popwhen
             cx_pushblock
             cx_pusheval
             cx_pushformat
             cx_pushgiven
             cx_pushloop_for
             cx_pushloop_plain
             cx_pushsub
             cx_pushwhen
             cx_topblock
             leave_adjust_stacks
             savetmps

       perl 5.22.0
             UVCHR_SKIP

       perl 5.21.10
             DECLARATION_FOR_LC_NUMERIC_MANIPULATION

       perl 5.21.8
             sv_get_backrefs

       perl 5.21.7
             PadnameUTF8
             is_invariant_string
             newPADNAMELIST
             newPADNAMEouter
             newPADNAMEpvn
             newUNOP_AUX
             padnamelist_fetch
             padnamelist_store

       perl 5.21.6
             newDEFSVOP
             op_convert_list

       perl 5.21.5
             cv_name
             newMETHOP
             newMETHOP_named

       perl 5.21.4
             cv_set_call_checker_flags
             grok_infnan
             isinfnan
             sync_locale

       perl 5.21.2
             grok_number_flags
             op_sibling_splice

       perl 5.21.1
             _is_in_locale_category
             _is_utf8_char_slow
             _is_utf8_idcont
             _is_utf8_idstart
             _is_utf8_xidcont
             _is_utf8_xidstart
             isALNUM_lazy
             isIDFIRST_lazy
             isUTF8_CHAR
             markstack_grow
             my_strerror

       perl 5.19.10
             OP_TYPE_IS_OR_WAS

       perl 5.19.9
             _to_utf8_fold_flags
             _to_utf8_lower_flags
             _to_utf8_title_flags
             _to_utf8_upper_flags

       perl 5.19.7
             OP_TYPE_IS

       perl 5.19.4
             append_utf8_from_native_byte
             is_safe_syscall
             uvoffuni_to_utf8_flags

       perl 5.19.3
             croak_memory_wrap
             sv_pos_b2u_flags

       perl 5.19.2
             SVt_INVLIST

       perl 5.19.1
             re_intuit_start
             toFOLD
             toFOLD_utf8
             toLOWER_L1
             toTITLE

       perl 5.18.0
             hv_rand_set

       perl 5.17.9
             av_tindex
             av_top_index

       perl 5.17.8
             _is_uni_FOO
             _is_uni_perl_idcont
             _is_utf8_FOO
             _is_utf8_mark
             _is_utf8_perl_idcont
             isALPHANUMERIC
             isIDCONT

       perl 5.17.7
             SvREFCNT_dec_NN
             _is_uni_perl_idstart
             _is_utf8_perl_idstart
             is_uni_alnumc
             is_uni_alnumc_lc
             is_utf8_alnumc

       perl 5.17.6
             READ_XDIGIT

       perl 5.17.4
             PL_comppad_name
             PadlistREFCNT
             newMYSUB
             newSVpadname

       perl 5.17.2
             is_uni_blank
             is_uni_blank_lc
             is_utf8_blank
             sv_copypv_flags
             sv_copypv_nomg
             sv_vcatpvfn_flags

       perl 5.15.9
             utf8_to_uvchr_buf
             utf8_to_uvuni_buf
             valid_utf8_to_uvchr
             valid_utf8_to_uvuni

       perl 5.15.8
             is_utf8_char_buf
             wrap_op_checker

       perl 5.15.7
             toLOWER_utf8
             toTITLE_utf8
             toUPPER_utf8
             to_utf8_fold
             to_utf8_lower
             to_utf8_title
             to_utf8_upper

       perl 5.15.6
             newCONSTSUB_flags

       perl 5.15.4
             HvENAMELEN
             HvENAMEUTF8
             HvNAMELEN
             HvNAMEUTF8
             gv_autoload_pv
             gv_autoload_pvn
             gv_autoload_sv
             gv_fetchmeth_pv
             gv_fetchmeth_pv_autoload
             gv_fetchmeth_pvn
             gv_fetchmeth_pvn_autoload
             gv_fetchmeth_sv
             gv_fetchmeth_sv_autoload
             gv_fetchmethod_pv_flags
             gv_fetchmethod_pvn_flags
             gv_fetchmethod_sv_flags
             gv_init_pv
             gv_init_sv
             newGVgen_flags
             sv_derived_from_pv
             sv_derived_from_pvn
             sv_derived_from_sv
             sv_does_pv
             sv_does_pvn
             sv_does_sv
             sv_ref
             whichsig_pv
             whichsig_pvn
             whichsig_sv

       perl 5.15.1
             cop_fetch_label
             cop_store_label
             pad_add_name_pv
             pad_add_name_pvn
             pad_add_name_pvs
             pad_add_name_sv
             pad_findmy_pv
             pad_findmy_pvn
             pad_findmy_pvs
             pad_findmy_sv

       perl 5.14.0
             _to_uni_fold_flags

       perl 5.13.10
             foldEQ_utf8_flags
             is_utf8_xidcont
             is_utf8_xidfirst

       perl 5.13.8
             foldEQ_latin1
             parse_arithexpr
             parse_fullexpr
             parse_listexpr
             parse_termexpr

       perl 5.13.7
             HvENAME
             OP_CLASS
             XopFLAGS
             amagic_deref_call
             bytes_cmp_utf8
             cop_hints_2hv
             cop_hints_fetch_pv
             cop_hints_fetch_pvn
             cop_hints_fetch_pvs
             cop_hints_fetch_sv
             cophh_2hv
             cophh_copy
             cophh_delete_pv
             cophh_delete_pvn
             cophh_delete_pvs
             cophh_delete_sv
             cophh_fetch_pv
             cophh_fetch_pvn
             cophh_fetch_pvs
             cophh_fetch_sv
             cophh_free
             cophh_store_pv
             cophh_store_pvn
             cophh_store_pvs
             cophh_store_sv
             custom_op_register
             custom_op_xop
             newFOROP
             newWHILEOP
             op_lvalue
             op_scope
             parse_barestmt
             parse_block
             parse_label

       perl 5.13.6
             LINKLIST
             SvTRUE_nomg
             ck_entersub_args_list
             ck_entersub_args_proto
             ck_entersub_args_proto_or_list
             cv_get_call_checker
             cv_set_call_checker
             isWORDCHAR
             lex_stuff_pv
             mg_free_type
             newSVpv_share
             op_append_elem
             op_append_list
             op_contextualize
             op_linklist
             op_prepend_elem
             parse_stmtseq
             rv2cv_op_cv
             savesharedpvs
             savesharedsvpv
             sv_2bool_flags
             sv_catpv_flags
             sv_catpv_nomg
             sv_catpvs_flags
             sv_catpvs_mg
             sv_catpvs_nomg
             sv_cmp_flags
             sv_cmp_locale_flags
             sv_collxfrm_flags
             sv_eq_flags
             sv_setpvs_mg

       perl 5.13.5
             PL_rpeepp
             isOCTAL
             lex_stuff_pvs
             parse_fullstmt

       perl 5.13.3
             blockhook_register
             croak_no_modify

       perl 5.13.2
             SvNV_nomg
             find_rundefsv
             foldEQ
             foldEQ_locale
             foldEQ_utf8
             hv_fill
             sv_dec_nomg
             sv_inc_nomg

       perl 5.13.1
             croak_sv
             die_sv
             mess_sv
             sv_2nv_flags
             warn_sv

       perl 5.11.5
             sv_pos_u2b_flags

       perl 5.11.4
             prescan_version

       perl 5.11.2
             PL_keyword_plugin
             lex_bufutf8
             lex_discard_to
             lex_grow_linestr
             lex_next_chunk
             lex_peek_unichar
             lex_read_space
             lex_read_to
             lex_read_unichar
             lex_stuff_pvn
             lex_stuff_sv
             lex_unstuff

       perl 5.11.1
             ck_warner
             ck_warner_d
             is_utf8_perl_space
             is_utf8_perl_word
             is_utf8_posix_digit

       perl 5.11.0
             Gv_AMupdate
             PL_opfreehook
             SVt_REGEXP
             SvOOK_offset
             av_iter_p
             gv_add_by_type
             is_ascii_string
             pregfree2
             save_adelete
             save_aelem_flags
             save_hdelete
             save_helem_flags
             sv_utf8_upgrade_flags_grow

       perl 5.10.1
             croak_xs_usage
             mro_get_from_name
             mro_get_private_data
             mro_register
             mro_set_mro
             mro_set_private_data
             save_hints
             save_padsv_and_mortalize
             save_pushi32ptr
             save_pushptr
             save_pushptrptr
             sv_insert_flags

       perl 5.10.0
             hv_common
             hv_common_key_len
             sv_destroyable
             sys_init
             sys_init3
             sys_term

       perl 5.9.5
             Perl_signbit
             av_create_and_push
             av_create_and_unshift_one
             gv_fetchfile_flags
             lex_start
             mro_get_linear_isa
             mro_method_changed_in
             my_dirfd
             pregcomp
             ptr_table_clear
             ptr_table_fetch
             ptr_table_free
             ptr_table_new
             ptr_table_split
             ptr_table_store
             re_compile
             reg_named_buff_all
             reg_named_buff_exists
             reg_named_buff_fetch
             reg_named_buff_firstkey
             reg_named_buff_nextkey
             reg_named_buff_scalar
             regfree_internal
             savesharedpvn
             scan_vstring
             upg_version

       perl 5.9.4
             PerlIO_context_layers
             gv_name_set
             hv_copy_hints_hv
             my_vsnprintf
             newXS_flags
             regclass_swash
             sv_does
             sv_usepvn_flags

       perl 5.9.3
             av_arylen_p
             ckwarn
             ckwarn_d
             csighandler
             dMULTICALL
             doref
             gv_const_sv
             hv_eiter_p
             hv_eiter_set
             hv_name_set
             hv_placeholders_get
             hv_placeholders_set
             hv_riter_p
             hv_riter_set
             is_utf8_string_loclen
             newGIVENOP
             newSVhek
             newWHENOP
             pad_compname_type
             savepvs
             sortsv_flags
             vverify

       perl 5.9.2
             SvPVbyte_force
             find_rundefsvoffset
             op_refcnt_lock
             op_refcnt_unlock
             savesvpv
             vnormal

       perl 5.9.1
             hv_clear_placeholders
             hv_scalar
             scan_version
             sv_2iv_flags
             sv_2uv_flags

       perl 5.9.0
             new_version
             save_set_svflags
             vcmp
             vnumify
             vstringify

       perl 5.8.3
             SvIsCOW
             SvIsCOW_shared_hash

       perl 5.8.1
             CvPADLIST
             PL_comppad
             SvVOK
             doing_taint
             find_runcv
             is_utf8_string_loc
             packlist
             pad_add_anon
             pad_new
             pad_tidy
             save_bool
             savestack_grow_cnt
             seed
             sv_cat_decode
             sv_setpviv
             sv_setpviv_mg
             unpackstring

       perl 5.8.0
             HeUTF8
             hv_iternext_flags
             hv_store_flags
             is_utf8_idcont
             nothreadhook

       perl 5.7.3
             OP_DESC
             OP_NAME
             PL_peepp
             PerlIO_clearerr
             PerlIO_close
             PerlIO_eof
             PerlIO_error
             PerlIO_fileno
             PerlIO_fill
             PerlIO_flush
             PerlIO_get_base
             PerlIO_get_bufsiz
             PerlIO_get_cnt
             PerlIO_get_ptr
             PerlIO_read
             PerlIO_seek
             PerlIO_set_cnt
             PerlIO_set_ptrcnt
             PerlIO_setlinebuf
             PerlIO_stderr
             PerlIO_stdin
             PerlIO_stdout
             PerlIO_tell
             PerlIO_unread
             PerlIO_write
             SvLOCK
             SvSHARE
             SvUNLOCK
             atfork_lock
             atfork_unlock
             custom_op_desc
             custom_op_name
             deb
             debstack
             debstackptrs
             gv_fetchmeth_autoload
             ibcmp_utf8
             my_fork
             my_socketpair
             pack_cat
             perl_destruct
             pv_uni_display
             save_shared_pvref
             savesharedpv
             sortsv
             sv_magicext
             sv_nolocking
             sv_nosharing
             sv_recode_to_utf8
             sv_uni_display
             to_uni_fold
             to_uni_lower
             to_uni_title
             to_uni_upper
             to_utf8_case
             unpack_str
             uvchr_to_utf8_flags
             uvuni_to_utf8_flags
             vdeb

       perl 5.7.2
             calloc
             getcwd_sv
             init_tm
             malloc
             mfree
             mini_mktime
             my_atof2
             my_strftime
             op_null
             realloc
             sv_catpvn_flags
             sv_catsv_flags
             sv_setsv_flags
             sv_utf8_upgrade_flags
             sv_utf8_upgrade_nomg
             swash_fetch

       perl 5.7.1
             ASCII_TO_NEED
             NATIVE_TO_NEED
             POPpbytex
             bytes_from_utf8
             despatch_signals
             do_openn
             gv_handler
             is_lvalue_sub
             my_popen_list
             save_mortalizesv
             scan_num
             sv_force_normal_flags
             sv_setref_uv
             sv_unref_flags
             sv_utf8_upgrade
             utf8_length
             utf8_to_uvchr
             utf8_to_uvuni
             utf8n_to_uvchr
             utf8n_to_uvuni
             uvchr_to_utf8
             uvuni_to_utf8

       perl 5.6.1
             SvGAMAGIC
             apply_attrs_string
             bytes_to_utf8
             gv_efullname4
             gv_fullname4
             is_utf8_string
             save_generic_pvref
             utf16_to_utf8
             utf16_to_utf8_reversed
             utf8_to_bytes

       perl 5.6.0
             DO_UTF8
             PERL_SYS_INIT3
             PL_check
             POPul
             SvIOK_UV
             SvIOK_notUV
             SvIOK_only_UV
             SvPOK_only_UTF8
             SvPVbyte_nolen
             SvPVbytex
             SvPVbytex_force
             SvPVutf8
             SvPVutf8_force
             SvPVutf8_nolen
             SvPVutf8x
             SvPVutf8x_force
             SvUOK
             SvUTF8
             SvUTF8_off
             SvUTF8_on
             UTF8SKIP
             av_delete
             av_exists
             call_atexit
             caller_cx
             cast_i32
             cast_iv
             cast_ulong
             cast_uv
             do_gv_dump
             do_gvgv_dump
             do_hv_dump
             do_magic_dump
             do_op_dump
             do_open9
             do_pmop_dump
             do_sv_dump
             dump_all
             dump_eval
             dump_form
             dump_indent
             dump_packsubs
             dump_sub
             dump_vindent
             get_context
             get_ppaddr
             gv_dump
             init_i18nl10n
             init_i18nl14n
             is_uni_alnum
             is_uni_alnum_lc
             is_uni_alpha
             is_uni_alpha_lc
             is_uni_ascii
             is_uni_ascii_lc
             is_uni_cntrl
             is_uni_cntrl_lc
             is_uni_digit
             is_uni_digit_lc
             is_uni_graph
             is_uni_graph_lc
             is_uni_idfirst
             is_uni_idfirst_lc
             is_uni_lower
             is_uni_lower_lc
             is_uni_print
             is_uni_print_lc
             is_uni_punct
             is_uni_punct_lc
             is_uni_space
             is_uni_space_lc
             is_uni_upper
             is_uni_upper_lc
             is_uni_xdigit
             is_uni_xdigit_lc
             is_utf8_alnum
             is_utf8_alpha
             is_utf8_ascii
             is_utf8_char
             is_utf8_cntrl
             is_utf8_digit
             is_utf8_graph
             is_utf8_idfirst
             is_utf8_lower
             is_utf8_mark
             is_utf8_print
             is_utf8_punct
             is_utf8_space
             is_utf8_upper
             is_utf8_xdigit
             magic_dump
             mess
             my_atof
             my_fflush_all
             newANONATTRSUB
             newATTRSUB
             newXS
             newXSproto
             new_collate
             new_ctype
             new_numeric
             op_dump
             perl_parse
             pmop_dump
             re_intuit_string
             reginitcolors
             require_pv
             safesyscalloc
             safesysfree
             safesysmalloc
             safesysrealloc
             save_I8
             save_alloc
             save_destructor
             save_destructor_x
             save_re_context
             save_vptr
             scan_bin
             set_context
             set_numeric_local
             set_numeric_radix
             set_numeric_standard
             str_to_version
             sv_2pvutf8
             sv_2pvutf8_nolen
             sv_force_normal
             sv_len_utf8
             sv_pos_b2u
             sv_pos_u2b
             sv_pv
             sv_pvbyte
             sv_pvbyten
             sv_pvbyten_force
             sv_pvutf8
             sv_pvutf8n
             sv_pvutf8n_force
             sv_rvweaken
             sv_utf8_decode
             sv_utf8_downgrade
             sv_utf8_encode
             swash_init
             to_uni_lower_lc
             to_uni_title_lc
             to_uni_upper_lc
             utf8_distance
             utf8_hop
             vcroak
             vform
             vmess
             vwarn
             vwarner

       perl 5.005_03
             POPpx
             get_vtbl
             save_generic_svref

       perl 5.005
             PL_curpad
             PL_modglobal
             cx_dump
             debop
             debprofdump
             fbm_compile
             fbm_instr
             get_op_descs
             get_op_names
             init_stacks
             mg_length
             mg_size
             newHVhv
             new_stackinfo
             regdump
             regexec_flags
             regnext
             runops_debug
             runops_standard
             save_iv
             save_op
             sv_iv
             sv_nv
             sv_peek
             sv_pvn
             sv_pvn_nomg
             sv_true

       perl 5.004_05
             CopyD
             MoveD
             do_binmode
             my_bcopy
             save_aelem
             save_helem

       perl 5.004
             GIMME_V
             G_VOID
             HePV
             HeSVKEY_set
             POPu
             SvSetMagicSV
             SvSetMagicSV_nosteal
             SvSetSV_nosteal
             SvTAINTED
             SvTAINTED_off
             SvTAINTED_on
             block_end
             block_gimme
             block_start
             call_list
             delimcpy
             form
             gv_autoload4
             gv_fetchmethod_autoload
             hv_delayfree_ent
             hv_free_ent
             ibcmp_locale
             intro_my
             my_failure_exit
             newSVpvf
             rsignal
             rsignal_state
             save_I16
             save_gp
             share_hek
             start_subparse
             sv_catpvf
             sv_catpvf_mg
             sv_cmp_locale
             sv_derived_from
             sv_magic_portable
             sv_setpvf
             sv_setpvf_mg
             sv_taint
             sv_tainted
             sv_untaint
             sv_vcatpvf
             sv_vcatpvf_mg
             sv_vcatpvfn
             sv_vsetpvf
             sv_vsetpvf_mg
             sv_vsetpvfn
             toLOWER_LC
             vnewSVpvf
             warner

       perl 5.003_07
             HeHASH
             HeKEY
             HeKLEN
             HeSVKEY
             HeSVKEY_force
             HeVAL
             cv_const_sv
             do_open
             gv_efullname3
             gv_fullname3
             hv_delete_ent
             hv_exists_ent
             hv_fetch_ent
             hv_iterkeysv
             hv_ksplit
             hv_store_ent
             my_pclose
             my_popen
             sv_gets
             unsharepvn

BUGS

       If you find any bugs, "Devel::PPPort" doesn't seem to build on your system, or any of its
       tests fail, please file an issue here: <https://github.com/mhx/Devel-PPPort/issues/>

AUTHORS

       • Version 1.x of Devel::PPPort was written by Kenneth Albanowski.

       • Version 2.x was ported to the Perl core by Paul Marquess.

       • Version 3.x was ported back to CPAN by Marcus Holland-Moritz.

       • Versions >= 3.22 are maintained with support from Matthew Horsfall (alh).

COPYRIGHT

       Version 3.x, Copyright (C) 2004-2013, Marcus Holland-Moritz.

       Version 2.x, Copyright (C) 2001, Paul Marquess.

       Version 1.x, Copyright (C) 1999, Kenneth Albanowski.

       This program is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.

SEE ALSO

       See h2xs, ppport.h.