1PPPort(3)             User Contributed Perl Documentation            PPPort(3)
2
3
4

NAME

6       Devel::PPPort - Perl/Pollution/Portability
7

SYNOPSIS

9         Devel::PPPort::WriteFile();   # defaults to ./ppport.h
10         Devel::PPPort::WriteFile('someheader.h');
11
12         # Same as above but retrieve contents rather than write file
13         my $contents = Devel::PPPort::GetFileContents();
14         my $contents = Devel::PPPort::GetFileContents('someheader.h');
15

Start using Devel::PPPort for XS projects

17         $ cpan Devel::PPPort
18         $ perl -MDevel::PPPort -e'Devel::PPPort::WriteFile'
19         $ perl ppport.h --compat-version=5.6.1 --patch=diff.patch *.xs
20         $ patch -p0 < diff.patch
21         $ echo ppport.h >>MANIFEST
22

DESCRIPTION

24       Perl's API has changed over time, gaining new features, new functions,
25       increasing its flexibility, and reducing the impact on the C namespace
26       environment (reduced pollution). The header file written by this
27       module, typically ppport.h, attempts to bring some of the newer Perl
28       API features to older versions of Perl, so that you can worry less
29       about keeping track of old releases, but users can still reap the
30       benefit.
31
32       "Devel::PPPort" contains two functions, "WriteFile" and
33       "GetFileContents".  "WriteFile"'s only purpose is to write the ppport.h
34       C header file.  This file contains a series of macros and, if
35       explicitly requested, functions that allow XS modules to be built using
36       older versions of Perl. Currently, Perl versions from 5.003 to 5.30 are
37       supported.
38
39       "GetFileContents" can be used to retrieve the file contents rather than
40       writing it out.
41
42       This module is used by "h2xs" to write the file ppport.h.
43
44   Why use ppport.h?
45       You should use ppport.h in modern code so that your code will work with
46       the widest range of Perl interpreters possible, without significant
47       additional work.
48
49       You should attempt older code to fully use ppport.h, because the
50       reduced pollution of newer Perl versions is an important thing. It's so
51       important that the old polluting ways of original Perl modules will not
52       be supported very far into the future, and your module will almost
53       certainly break! By adapting to it now, you'll gain compatibility and a
54       sense of having done the electronic ecology some good.
55
56   How to use ppport.h
57       Don't direct the users of your module to download "Devel::PPPort".
58       They are most probably no XS writers. Also, don't make ppport.h
59       optional. Rather, just take the most recent copy of ppport.h that you
60       can find (e.g. by generating it with the latest "Devel::PPPort" release
61       from CPAN), copy it into your project, adjust your project to use it,
62       and distribute the header along with your module.
63
64   Running ppport.h
65       But ppport.h is more than just a C header. It's also a Perl script that
66       can check your source code. It will suggest hints and portability
67       notes, and can even make suggestions on how to change your code. You
68       can run it like any other Perl program:
69
70           perl ppport.h [options] [files]
71
72       It also has embedded documentation, so you can use
73
74           perldoc ppport.h
75
76       to find out more about how to use it.
77

FUNCTIONS

79   WriteFile
80       "WriteFile" takes one optional argument. When called with one argument,
81       it expects to be passed a filename. When called with no arguments, it
82       defaults to the filename ppport.h.
83
84       The function returns a true value if the file was written successfully.
85       Otherwise it returns a false value.
86
87   GetFileContents
88       "GetFileContents" behaves like "WriteFile" above, but returns the
89       contents of the would-be file rather than writing it out.
90

COMPATIBILITY

92       ppport.h supports Perl versions from 5.003 to 5.30 in threaded and non-
93       threaded configurations.
94
95   Provided Perl compatibility API
96       The header file written by this module, typically ppport.h, provides
97       access to the following elements of the Perl API that is not available
98       in older Perl releases:
99
100           __ASSERT_
101           _aMY_CXT
102           _pMY_CXT
103           aMY_CXT
104           aMY_CXT_
105           aTHX
106           aTHX_
107           aTHXR
108           aTHXR_
109           av_tindex
110           av_top_index
111           AvFILLp
112           boolSV
113           C_ARRAY_END
114           C_ARRAY_LENGTH
115           call_argv
116           call_method
117           call_pv
118           call_sv
119           caller_cx
120           cBOOL
121           ckWARN
122           CopFILE
123           CopFILE_set
124           CopFILEAV
125           CopFILEGV
126           CopFILEGV_set
127           CopFILESV
128           CopSTASH
129           CopSTASH_eq
130           CopSTASH_set
131           CopSTASHPV
132           CopSTASHPV_set
133           CopyD
134           CPERLscope
135           croak_memory_wrap
136           croak_no_modify
137           croak_nocontext
138           croak_sv
139           croak_xs_usage
140           dAX
141           dAXMARK
142           DEFSV
143           DEFSV_set
144           die_sv
145           dITEMS
146           dMY_CXT
147           dMY_CXT_SV
148           dNOOP
149           dTHR
150           dTHX
151           dTHXa
152           dTHXoa
153           dTHXR
154           dUNDERBAR
155           dVAR
156           dXCPT
157           dXSTARG
158           END_EXTERN_C
159           ERRSV
160           eval_pv
161           eval_sv
162           EXTERN_C
163           G_METHOD
164           get_av
165           get_cv
166           get_cvs
167           get_hv
168           get_sv
169           grok_bin
170           grok_hex
171           grok_number
172           GROK_NUMERIC_RADIX
173           grok_numeric_radix
174           grok_oct
175           gv_fetchpvn_flags
176           gv_fetchpvs
177           gv_stashpvn
178           gv_stashpvs
179           HEf_SVKEY
180           HeUTF8
181           hv_fetchs
182           hv_stores
183           HvNAME_get
184           HvNAMELEN_get
185           IN_LOCALE
186           IN_LOCALE_COMPILETIME
187           IN_LOCALE_RUNTIME
188           IN_PERL_COMPILETIME
189           INT2PTR
190           IS_NUMBER_GREATER_THAN_UV_MAX
191           IS_NUMBER_IN_UV
192           IS_NUMBER_INFINITY
193           IS_NUMBER_NAN
194           IS_NUMBER_NEG
195           IS_NUMBER_NOT_INT
196           isALNUM
197           isALNUM_A
198           isALNUMC
199           isALNUMC_A
200           isALPHA
201           isALPHA_A
202           isALPHANUMERIC
203           isALPHANUMERIC_A
204           isASCII
205           isASCII_A
206           isBLANK
207           isBLANK_A
208           isCNTRL
209           isCNTRL_A
210           isDIGIT
211           isDIGIT_A
212           isGRAPH
213           isGRAPH_A
214           isIDCONT
215           isIDCONT_A
216           isIDFIRST
217           isIDFIRST_A
218           isLOWER
219           isLOWER_A
220           isOCTAL
221           isOCTAL_A
222           isPRINT
223           isPRINT_A
224           isPSXSPC
225           isPSXSPC_A
226           isPUNCT
227           isPUNCT_A
228           isSPACE
229           isSPACE_A
230           isUPPER
231           isUPPER_A
232           isWORDCHAR
233           isWORDCHAR_A
234           isXDIGIT
235           isXDIGIT_A
236           IVdf
237           IVSIZE
238           IVTYPE
239           LIKELY
240           load_module
241           memEQ
242           memEQs
243           memNE
244           memNEs
245           mess
246           mess_nocontext
247           mess_sv
248           mg_findext
249           MoveD
250           mPUSHi
251           mPUSHn
252           mPUSHp
253           mPUSHs
254           mPUSHu
255           MUTABLE_PTR
256           MUTABLE_SV
257           mXPUSHi
258           mXPUSHn
259           mXPUSHp
260           mXPUSHs
261           mXPUSHu
262           MY_CXT
263           MY_CXT_CLONE
264           MY_CXT_INIT
265           my_snprintf
266           my_sprintf
267           my_strlcat
268           my_strlcpy
269           my_strnlen
270           newCONSTSUB
271           newRV_inc
272           newRV_noinc
273           newSV_type
274           newSVpvn
275           newSVpvn_flags
276           newSVpvn_share
277           newSVpvn_utf8
278           newSVpvs
279           newSVpvs_flags
280           newSVpvs_share
281           newSVuv
282           Newx
283           Newxc
284           Newxz
285           NOOP
286           NUM2PTR
287           NVef
288           NVff
289           NVgf
290           NVTYPE
291           OpHAS_SIBLING
292           OpLASTSIB_set
293           OpMAYBESIB_set
294           OpMORESIB_set
295           OpSIBLING
296           packWARN
297           PERL_ABS
298           PERL_ARGS_ASSERT_CROAK_XS_USAGE
299           PERL_BCDVERSION
300           Perl_croak_no_modify
301           PERL_GCC_BRACE_GROUPS_FORBIDDEN
302           PERL_HASH
303           PERL_INT_MAX
304           PERL_INT_MIN
305           PERL_LONG_MAX
306           PERL_LONG_MIN
307           PERL_MAGIC_arylen
308           PERL_MAGIC_backref
309           PERL_MAGIC_bm
310           PERL_MAGIC_collxfrm
311           PERL_MAGIC_dbfile
312           PERL_MAGIC_dbline
313           PERL_MAGIC_defelem
314           PERL_MAGIC_env
315           PERL_MAGIC_envelem
316           PERL_MAGIC_ext
317           PERL_MAGIC_fm
318           PERL_MAGIC_glob
319           PERL_MAGIC_isa
320           PERL_MAGIC_isaelem
321           PERL_MAGIC_mutex
322           PERL_MAGIC_nkeys
323           PERL_MAGIC_overload
324           PERL_MAGIC_overload_elem
325           PERL_MAGIC_overload_table
326           PERL_MAGIC_pos
327           PERL_MAGIC_qr
328           PERL_MAGIC_regdata
329           PERL_MAGIC_regdatum
330           PERL_MAGIC_regex_global
331           PERL_MAGIC_shared
332           PERL_MAGIC_shared_scalar
333           PERL_MAGIC_sig
334           PERL_MAGIC_sigelem
335           PERL_MAGIC_substr
336           PERL_MAGIC_sv
337           PERL_MAGIC_taint
338           PERL_MAGIC_tied
339           PERL_MAGIC_tiedelem
340           PERL_MAGIC_tiedscalar
341           PERL_MAGIC_utf8
342           PERL_MAGIC_uvar
343           PERL_MAGIC_uvar_elem
344           PERL_MAGIC_vec
345           PERL_MAGIC_vstring
346           PERL_PV_ESCAPE_ALL
347           PERL_PV_ESCAPE_FIRSTCHAR
348           PERL_PV_ESCAPE_NOBACKSLASH
349           PERL_PV_ESCAPE_NOCLEAR
350           PERL_PV_ESCAPE_QUOTE
351           PERL_PV_ESCAPE_RE
352           PERL_PV_ESCAPE_UNI
353           PERL_PV_ESCAPE_UNI_DETECT
354           PERL_PV_PRETTY_DUMP
355           PERL_PV_PRETTY_ELLIPSES
356           PERL_PV_PRETTY_LTGT
357           PERL_PV_PRETTY_NOCLEAR
358           PERL_PV_PRETTY_QUOTE
359           PERL_PV_PRETTY_REGPROP
360           PERL_QUAD_MAX
361           PERL_QUAD_MIN
362           PERL_REVISION
363           PERL_SCAN_ALLOW_UNDERSCORES
364           PERL_SCAN_DISALLOW_PREFIX
365           PERL_SCAN_GREATER_THAN_UV_MAX
366           PERL_SCAN_SILENT_ILLDIGIT
367           PERL_SHORT_MAX
368           PERL_SHORT_MIN
369           PERL_SIGNALS_UNSAFE_FLAG
370           PERL_SUBVERSION
371           PERL_UCHAR_MAX
372           PERL_UCHAR_MIN
373           PERL_UINT_MAX
374           PERL_UINT_MIN
375           PERL_ULONG_MAX
376           PERL_ULONG_MIN
377           PERL_UNUSED_ARG
378           PERL_UNUSED_CONTEXT
379           PERL_UNUSED_DECL
380           PERL_UNUSED_RESULT
381           PERL_UNUSED_VAR
382           PERL_UQUAD_MAX
383           PERL_UQUAD_MIN
384           PERL_USE_GCC_BRACE_GROUPS
385           PERL_USHORT_MAX
386           PERL_USHORT_MIN
387           PERL_VERSION
388           Perl_warner
389           Perl_warner_nocontext
390           PERLIO_FUNCS_CAST
391           PERLIO_FUNCS_DECL
392           PL_bufend
393           PL_bufptr
394           PL_compiling
395           PL_copline
396           PL_curcop
397           PL_curstash
398           PL_DBsignal
399           PL_DBsingle
400           PL_DBsub
401           PL_DBtrace
402           PL_debstash
403           PL_defgv
404           PL_diehook
405           PL_dirty
406           PL_dowarn
407           PL_errgv
408           PL_error_count
409           PL_expect
410           PL_hexdigit
411           PL_hints
412           PL_in_my
413           PL_in_my_stash
414           PL_laststatval
415           PL_lex_state
416           PL_lex_stuff
417           PL_linestr
418           PL_na
419           PL_no_modify
420           PL_parser
421           PL_perl_destruct_level
422           PL_perldb
423           PL_ppaddr
424           PL_rsfp
425           PL_rsfp_filters
426           PL_signals
427           PL_stack_base
428           PL_stack_sp
429           PL_statcache
430           PL_stdingv
431           PL_Sv
432           PL_sv_arenaroot
433           PL_sv_no
434           PL_sv_undef
435           PL_sv_yes
436           PL_tainted
437           PL_tainting
438           PL_tokenbuf
439           pMY_CXT
440           pMY_CXT_
441           Poison
442           PoisonFree
443           PoisonNew
444           PoisonWith
445           pTHX
446           pTHX_
447           PTR2IV
448           PTR2nat
449           PTR2NV
450           PTR2ul
451           PTR2UV
452           PTRV
453           PUSHmortal
454           PUSHu
455           pv_display
456           pv_escape
457           pv_pretty
458           SAVE_DEFSV
459           START_EXTERN_C
460           START_MY_CXT
461           STMT_END
462           STMT_START
463           STR_WITH_LEN
464           sv_2pv_flags
465           sv_2pv_nolen
466           sv_2pvbyte
467           sv_2pvbyte_nolen
468           sv_2uv
469           sv_catpv_mg
470           sv_catpvf_mg
471           sv_catpvf_mg_nocontext
472           sv_catpvn_mg
473           sv_catpvn_nomg
474           sv_catpvs
475           sv_catsv_mg
476           sv_catsv_nomg
477           SV_CONST_RETURN
478           SV_COW_DROP_PV
479           SV_COW_SHARED_HASH_KEYS
480           SV_GMAGIC
481           SV_HAS_TRAILING_NUL
482           SV_IMMEDIATE_UNREF
483           sv_magic_portable
484           SV_MUTABLE_RETURN
485           SV_NOSTEAL
486           sv_pvn_force_flags
487           sv_pvn_nomg
488           sv_setiv_mg
489           sv_setnv_mg
490           sv_setpv_mg
491           sv_setpvf_mg
492           sv_setpvf_mg_nocontext
493           sv_setpvn_mg
494           sv_setpvs
495           sv_setsv_mg
496           sv_setsv_nomg
497           sv_setuv
498           sv_setuv_mg
499           SV_SMAGIC
500           sv_unmagicext
501           sv_usepvn_mg
502           SV_UTF8_NO_ENCODING
503           sv_uv
504           sv_vcatpvf
505           sv_vcatpvf_mg
506           sv_vsetpvf
507           sv_vsetpvf_mg
508           SVf
509           SVf_UTF8
510           SVfARG
511           SvGETMAGIC
512           SvIV_nomg
513           SvMAGIC_set
514           SvPV_const
515           SvPV_flags
516           SvPV_flags_const
517           SvPV_flags_const_nolen
518           SvPV_flags_mutable
519           SvPV_force
520           SvPV_force_flags
521           SvPV_force_flags_mutable
522           SvPV_force_flags_nolen
523           SvPV_force_mutable
524           SvPV_force_nolen
525           SvPV_force_nomg
526           SvPV_force_nomg_nolen
527           SvPV_mutable
528           SvPV_nolen
529           SvPV_nolen_const
530           SvPV_nomg
531           SvPV_nomg_const
532           SvPV_nomg_const_nolen
533           SvPV_nomg_nolen
534           SvPV_renew
535           SvPVbyte
536           SvPVX_const
537           SvPVX_mutable
538           SvREFCNT_inc
539           SvREFCNT_inc_NN
540           SvREFCNT_inc_simple
541           SvREFCNT_inc_simple_NN
542           SvREFCNT_inc_simple_void
543           SvREFCNT_inc_simple_void_NN
544           SvREFCNT_inc_void
545           SvREFCNT_inc_void_NN
546           SvRV_set
547           SvRX
548           SvRXOK
549           SvSHARED_HASH
550           SvSTASH_set
551           SvUOK
552           SvUV
553           SvUV_nomg
554           SvUV_set
555           SvUVX
556           SvUVx
557           SvUVXx
558           SvVSTRING_mg
559           UNDERBAR
560           UNICODE_REPLACEMENT
561           UNLIKELY
562           UTF8_MAXBYTES
563           UTF8_SAFE_SKIP
564           utf8_to_uvchr
565           utf8_to_uvchr_buf
566           UVof
567           UVSIZE
568           UVTYPE
569           UVuf
570           UVXf
571           UVxf
572           vload_module
573           vmess
574           vnewSVpvf
575           WARN_ALL
576           WARN_AMBIGUOUS
577           WARN_ASSERTIONS
578           WARN_BAREWORD
579           WARN_CLOSED
580           WARN_CLOSURE
581           WARN_DEBUGGING
582           WARN_DEPRECATED
583           WARN_DIGIT
584           WARN_EXEC
585           WARN_EXITING
586           WARN_GLOB
587           WARN_INPLACE
588           WARN_INTERNAL
589           WARN_IO
590           WARN_LAYER
591           WARN_MALLOC
592           WARN_MISC
593           WARN_NEWLINE
594           warn_nocontext
595           WARN_NUMERIC
596           WARN_ONCE
597           WARN_OVERFLOW
598           WARN_PACK
599           WARN_PARENTHESIS
600           WARN_PIPE
601           WARN_PORTABLE
602           WARN_PRECEDENCE
603           WARN_PRINTF
604           WARN_PROTOTYPE
605           WARN_QW
606           WARN_RECURSION
607           WARN_REDEFINE
608           WARN_REGEXP
609           WARN_RESERVED
610           WARN_SEMICOLON
611           WARN_SEVERE
612           WARN_SIGNAL
613           WARN_SUBSTR
614           warn_sv
615           WARN_SYNTAX
616           WARN_TAINT
617           WARN_THREADS
618           WARN_UNINITIALIZED
619           WARN_UNOPENED
620           WARN_UNPACK
621           WARN_UNTIE
622           WARN_UTF8
623           WARN_VOID
624           warner
625           WIDEST_UTYPE
626           XCPT_CATCH
627           XCPT_RETHROW
628           XCPT_TRY_END
629           XCPT_TRY_START
630           XPUSHmortal
631           XPUSHu
632           XSprePUSH
633           XSPROTO
634           XSRETURN
635           XSRETURN_UV
636           XST_mUV
637           ZeroD
638
639   Perl API not supported by ppport.h
640       There is still a big part of the API not supported by ppport.h.  Either
641       because it doesn't make sense to back-port that part of the API, or
642       simply because it hasn't been implemented yet. Patches welcome!
643
644       Here's a list of the currently unsupported API, and also the version of
645       Perl below which it is unsupported:
646
647       perl 5.24.0
648             BhkDISABLE
649             BhkENABLE
650             BhkENTRY_set
651             MULTICALL
652             PERL_SYS_TERM
653             POP_MULTICALL
654             PUSH_MULTICALL
655             PadARRAY
656             PadMAX
657             PadlistARRAY
658             PadlistMAX
659             PadlistNAMES
660             PadlistNAMESARRAY
661             PadlistNAMESMAX
662             PadnameLEN
663             PadnamePV
664             PadnameREFCNT
665             PadnameREFCNT_dec
666             PadnameSV
667             PadnamelistARRAY
668             PadnamelistMAX
669             PadnamelistREFCNT
670             PadnamelistREFCNT_dec
671             RESTORE_LC_NUMERIC
672             STORE_LC_NUMERIC_FORCE_TO_UNDERLYING
673             STORE_LC_NUMERIC_SET_TO_NEEDED
674             XS_APIVERSION_BOOTCHECK
675             XS_EXTERNAL
676             XS_INTERNAL
677             XS_VERSION_BOOTCHECK
678             XopDISABLE
679             XopENABLE
680             XopENTRY
681             XopENTRYCUSTOM
682             XopENTRY_set
683             cophh_new_empty
684             my_lstat
685             my_stat
686             reentrant_free
687             reentrant_init
688             reentrant_retry
689             reentrant_size
690             ref
691             sv_setref_pvs
692
693       perl 5.23.9
694             toFOLD_uvchr
695             toLOWER_uvchr
696             toTITLE_uvchr
697             toUPPER_uvchr
698
699       perl 5.23.8
700             clear_defarray
701
702       perl 5.22.0
703             UVCHR_SKIP
704
705       perl 5.21.10
706             DECLARATION_FOR_LC_NUMERIC_MANIPULATION
707
708       perl 5.21.7
709             PadnameUTF8
710             is_invariant_string
711             newUNOP_AUX
712
713       perl 5.21.6
714             newDEFSVOP
715             op_convert_list
716
717       perl 5.21.5
718             cv_name
719             newMETHOP
720             newMETHOP_named
721
722       perl 5.21.4
723             cv_set_call_checker_flags
724             grok_infnan
725             isinfnan
726             sync_locale
727
728       perl 5.21.2
729             grok_number_flags
730             op_sibling_splice
731
732       perl 5.21.1
733             isUTF8_CHAR
734             markstack_grow
735
736       perl 5.19.10
737             OP_TYPE_IS_OR_WAS
738
739       perl 5.19.7
740             OP_TYPE_IS
741
742       perl 5.19.4
743             is_safe_syscall
744             uvoffuni_to_utf8_flags
745
746       perl 5.19.3
747             sv_pos_b2u_flags
748
749       perl 5.19.2
750             SVt_INVLIST
751
752       perl 5.19.1
753             re_intuit_start
754             toFOLD
755             toFOLD_utf8
756             toLOWER_L1
757             toTITLE
758
759       perl 5.18.0
760             hv_rand_set
761
762       perl 5.17.9
763             av_tindex
764             av_top_index
765
766       perl 5.17.8
767             isALPHANUMERIC
768             isIDCONT
769
770       perl 5.17.7
771             SvREFCNT_dec_NN
772
773       perl 5.17.6
774             READ_XDIGIT
775
776       perl 5.17.4
777             PL_comppad_name
778             PadlistREFCNT
779             newMYSUB
780             newSVpadname
781
782       perl 5.17.2
783             sv_copypv_flags
784             sv_copypv_nomg
785             sv_vcatpvfn_flags
786
787       perl 5.15.9
788             utf8_to_uvchr_buf
789
790       perl 5.15.8
791             is_utf8_char_buf
792             wrap_op_checker
793
794       perl 5.15.7
795             toLOWER_utf8
796             toTITLE_utf8
797             toUPPER_utf8
798             to_utf8_fold
799             to_utf8_lower
800             to_utf8_title
801             to_utf8_upper
802
803       perl 5.15.6
804             newCONSTSUB_flags
805
806       perl 5.15.4
807             HvENAMELEN
808             HvENAMEUTF8
809             HvNAMELEN
810             HvNAMEUTF8
811             gv_autoload_pv
812             gv_autoload_pvn
813             gv_autoload_sv
814             gv_fetchmeth_pv
815             gv_fetchmeth_pv_autoload
816             gv_fetchmeth_pvn
817             gv_fetchmeth_pvn_autoload
818             gv_fetchmeth_sv
819             gv_fetchmeth_sv_autoload
820             gv_init_pv
821             gv_init_sv
822             newGVgen_flags
823             sv_derived_from_pv
824             sv_derived_from_pvn
825             sv_derived_from_sv
826             sv_does_pv
827             sv_does_pvn
828             sv_does_sv
829             sv_ref
830             whichsig_pv
831             whichsig_pvn
832             whichsig_sv
833
834       perl 5.15.1
835             pad_add_name_pv
836             pad_add_name_pvn
837             pad_add_name_pvs
838             pad_add_name_sv
839             pad_findmy_pv
840             pad_findmy_pvn
841             pad_findmy_pvs
842             pad_findmy_sv
843
844       perl 5.13.8
845             foldEQ_latin1
846
847       perl 5.13.7
848             HvENAME
849             OP_CLASS
850             XopFLAGS
851             amagic_deref_call
852             bytes_cmp_utf8
853             cop_hints_2hv
854             cop_hints_fetch_pv
855             cop_hints_fetch_pvn
856             cop_hints_fetch_pvs
857             cop_hints_fetch_sv
858             cophh_2hv
859             cophh_copy
860             cophh_delete_pv
861             cophh_delete_pvn
862             cophh_delete_pvs
863             cophh_delete_sv
864             cophh_fetch_pv
865             cophh_fetch_pvn
866             cophh_fetch_pvs
867             cophh_fetch_sv
868             cophh_free
869             cophh_store_pv
870             cophh_store_pvn
871             cophh_store_pvs
872             cophh_store_sv
873             custom_op_register
874             custom_op_xop
875             newFOROP
876             newWHILEOP
877
878       perl 5.13.6
879             LINKLIST
880             SvTRUE_nomg
881             ck_entersub_args_list
882             ck_entersub_args_proto
883             ck_entersub_args_proto_or_list
884             cv_get_call_checker
885             cv_set_call_checker
886             isWORDCHAR
887             mg_free_type
888             newSVpv_share
889             op_append_elem
890             op_append_list
891             op_contextualize
892             op_linklist
893             op_prepend_elem
894             rv2cv_op_cv
895             savesharedpvs
896             savesharedsvpv
897             sv_2bool_flags
898             sv_catpv_flags
899             sv_catpv_nomg
900             sv_catpvs_flags
901             sv_catpvs_mg
902             sv_catpvs_nomg
903             sv_cmp_flags
904             sv_cmp_locale_flags
905             sv_collxfrm_flags
906             sv_eq_flags
907             sv_setpvs_mg
908
909       perl 5.13.5
910             PL_rpeepp
911             isOCTAL
912             lex_stuff_pvs
913
914       perl 5.13.3
915             blockhook_register
916
917       perl 5.13.2
918             SvNV_nomg
919             find_rundefsv
920             foldEQ
921             foldEQ_locale
922             foldEQ_utf8
923             hv_fill
924             sv_dec_nomg
925             sv_inc_nomg
926
927       perl 5.13.1
928             sv_2nv_flags
929
930       perl 5.11.5
931             sv_pos_u2b_flags
932
933       perl 5.11.4
934             prescan_version
935
936       perl 5.11.2
937             PL_keyword_plugin
938
939       perl 5.11.1
940             ck_warner
941             ck_warner_d
942
943       perl 5.11.0
944             Gv_AMupdate
945             PL_opfreehook
946             SVt_REGEXP
947             SvOOK_offset
948             av_iter_p
949             gv_add_by_type
950             is_ascii_string
951             pregfree2
952             save_adelete
953             save_aelem_flags
954             save_hdelete
955             save_helem_flags
956             sv_utf8_upgrade_flags_grow
957
958       perl 5.10.1
959             mro_get_from_name
960             mro_get_private_data
961             mro_register
962             mro_set_mro
963             mro_set_private_data
964             save_hints
965             save_padsv_and_mortalize
966             save_pushi32ptr
967             save_pushptr
968             save_pushptrptr
969             sv_insert_flags
970
971       perl 5.10.0
972             hv_common
973             hv_common_key_len
974             sv_destroyable
975             sys_init
976             sys_init3
977             sys_term
978
979       perl 5.9.5
980             gv_fetchfile_flags
981             mro_get_linear_isa
982             mro_method_changed_in
983             my_dirfd
984             pregcomp
985             ptr_table_fetch
986             ptr_table_free
987             ptr_table_new
988             ptr_table_split
989             ptr_table_store
990             re_compile
991             reg_named_buff_all
992             reg_named_buff_exists
993             reg_named_buff_fetch
994             reg_named_buff_firstkey
995             reg_named_buff_nextkey
996             reg_named_buff_scalar
997             regfree_internal
998             savesharedpvn
999             scan_vstring
1000             upg_version
1001
1002       perl 5.9.4
1003             PerlIO_context_layers
1004             gv_name_set
1005             hv_copy_hints_hv
1006             my_vsnprintf
1007             sv_does
1008             sv_usepvn_flags
1009
1010       perl 5.9.3
1011             av_arylen_p
1012             ckwarn
1013             ckwarn_d
1014             csighandler
1015             dMULTICALL
1016             doref
1017             gv_const_sv
1018             hv_eiter_p
1019             hv_eiter_set
1020             hv_name_set
1021             hv_placeholders_get
1022             hv_placeholders_set
1023             hv_riter_p
1024             hv_riter_set
1025             is_utf8_string_loclen
1026             newGIVENOP
1027             newSVhek
1028             newWHENOP
1029             pad_compname_type
1030             savepvs
1031             sortsv_flags
1032             vverify
1033
1034       perl 5.9.2
1035             SvPVbyte_force
1036             op_refcnt_lock
1037             op_refcnt_unlock
1038             savesvpv
1039             vnormal
1040
1041       perl 5.9.1
1042             hv_clear_placeholders
1043             hv_scalar
1044             scan_version
1045             sv_2iv_flags
1046             sv_2uv_flags
1047
1048       perl 5.9.0
1049             new_version
1050             save_set_svflags
1051             vcmp
1052             vnumify
1053             vstringify
1054
1055       perl 5.8.3
1056             SvIsCOW
1057             SvIsCOW_shared_hash
1058
1059       perl 5.8.1
1060             CvPADLIST
1061             PL_comppad
1062             SvVOK
1063             doing_taint
1064             find_runcv
1065             is_utf8_string_loc
1066             packlist
1067             pad_add_anon
1068             pad_new
1069             save_bool
1070             savestack_grow_cnt
1071             seed
1072             sv_cat_decode
1073             sv_setpviv
1074             sv_setpviv_mg
1075             unpackstring
1076
1077       perl 5.8.0
1078             HeUTF8
1079             nothreadhook
1080
1081       perl 5.7.3
1082             OP_DESC
1083             OP_NAME
1084             PL_peepp
1085             PerlIO_clearerr
1086             PerlIO_close
1087             PerlIO_eof
1088             PerlIO_error
1089             PerlIO_fileno
1090             PerlIO_fill
1091             PerlIO_flush
1092             PerlIO_get_base
1093             PerlIO_get_bufsiz
1094             PerlIO_get_cnt
1095             PerlIO_get_ptr
1096             PerlIO_read
1097             PerlIO_seek
1098             PerlIO_set_cnt
1099             PerlIO_set_ptrcnt
1100             PerlIO_setlinebuf
1101             PerlIO_stderr
1102             PerlIO_stdin
1103             PerlIO_stdout
1104             PerlIO_tell
1105             PerlIO_unread
1106             PerlIO_write
1107             SvLOCK
1108             SvSHARE
1109             SvUNLOCK
1110             atfork_lock
1111             atfork_unlock
1112             custom_op_desc
1113             custom_op_name
1114             deb
1115             debstack
1116             debstackptrs
1117             gv_fetchmeth_autoload
1118             ibcmp_utf8
1119             my_fork
1120             my_socketpair
1121             pack_cat
1122             perl_destruct
1123             pv_uni_display
1124             save_shared_pvref
1125             savesharedpv
1126             sortsv
1127             sv_magicext
1128             sv_nolocking
1129             sv_nosharing
1130             sv_recode_to_utf8
1131             sv_uni_display
1132             unpack_str
1133             uvchr_to_utf8_flags
1134             uvuni_to_utf8_flags
1135             vdeb
1136
1137       perl 5.7.2
1138             calloc
1139             getcwd_sv
1140             init_tm
1141             malloc
1142             mfree
1143             mini_mktime
1144             my_atof2
1145             my_strftime
1146             op_null
1147             realloc
1148             sv_catpvn_flags
1149             sv_catsv_flags
1150             sv_setsv_flags
1151             sv_utf8_upgrade_flags
1152             sv_utf8_upgrade_nomg
1153
1154       perl 5.7.1
1155             POPpbytex
1156             despatch_signals
1157             do_openn
1158             gv_handler
1159             is_lvalue_sub
1160             my_popen_list
1161             save_mortalizesv
1162             scan_num
1163             sv_force_normal_flags
1164             sv_setref_uv
1165             sv_unref_flags
1166             sv_utf8_upgrade
1167             utf8_length
1168             utf8n_to_uvchr
1169             utf8n_to_uvuni
1170             uvchr_to_utf8
1171             uvuni_to_utf8
1172
1173       perl 5.6.1
1174             SvGAMAGIC
1175             gv_efullname4
1176             gv_fullname4
1177             is_utf8_string
1178             save_generic_pvref
1179             utf16_to_utf8
1180             utf16_to_utf8_reversed
1181
1182       perl 5.6.0
1183             DO_UTF8
1184             PERL_SYS_INIT3
1185             PL_check
1186             POPul
1187             SvIOK_UV
1188             SvIOK_notUV
1189             SvIOK_only_UV
1190             SvPOK_only_UTF8
1191             SvPVbyte_nolen
1192             SvPVbytex
1193             SvPVbytex_force
1194             SvPVutf8
1195             SvPVutf8_force
1196             SvPVutf8_nolen
1197             SvPVutf8x
1198             SvPVutf8x_force
1199             SvUOK
1200             SvUTF8
1201             SvUTF8_off
1202             SvUTF8_on
1203             UTF8SKIP
1204             av_delete
1205             av_exists
1206             call_atexit
1207             caller_cx
1208             cast_i32
1209             cast_iv
1210             cast_ulong
1211             cast_uv
1212             do_gv_dump
1213             do_gvgv_dump
1214             do_hv_dump
1215             do_magic_dump
1216             do_op_dump
1217             do_open9
1218             do_pmop_dump
1219             do_sv_dump
1220             dump_all
1221             dump_eval
1222             dump_form
1223             dump_indent
1224             dump_packsubs
1225             dump_sub
1226             dump_vindent
1227             get_context
1228             get_ppaddr
1229             gv_dump
1230             magic_dump
1231             my_atof
1232             my_fflush_all
1233             newANONATTRSUB
1234             newATTRSUB
1235             newXS
1236             newXSproto
1237             op_dump
1238             perl_parse
1239             pmop_dump
1240             re_intuit_string
1241             reginitcolors
1242             require_pv
1243             safesyscalloc
1244             safesysfree
1245             safesysmalloc
1246             safesysrealloc
1247             save_I8
1248             save_alloc
1249             save_destructor
1250             save_destructor_x
1251             save_re_context
1252             save_vptr
1253             scan_bin
1254             set_context
1255             set_numeric_local
1256             set_numeric_radix
1257             set_numeric_standard
1258             str_to_version
1259             sv_2pvutf8
1260             sv_2pvutf8_nolen
1261             sv_force_normal
1262             sv_len_utf8
1263             sv_pos_b2u
1264             sv_pos_u2b
1265             sv_pv
1266             sv_pvbyte
1267             sv_pvbyten
1268             sv_pvbyten_force
1269             sv_pvutf8
1270             sv_pvutf8n
1271             sv_pvutf8n_force
1272             sv_rvweaken
1273             sv_utf8_encode
1274             utf8_distance
1275             utf8_hop
1276             vcroak
1277             vform
1278             vmess
1279             vwarn
1280             vwarner
1281
1282       perl 5.005_03
1283             POPpx
1284             get_vtbl
1285             save_generic_svref
1286
1287       perl 5.005
1288             PL_curpad
1289             PL_modglobal
1290             cx_dump
1291             debop
1292             debprofdump
1293             fbm_compile
1294             fbm_instr
1295             get_op_descs
1296             get_op_names
1297             init_stacks
1298             mg_size
1299             newHVhv
1300             new_stackinfo
1301             regdump
1302             regexec_flags
1303             regnext
1304             runops_debug
1305             runops_standard
1306             save_iv
1307             save_op
1308             sv_iv
1309             sv_nv
1310             sv_peek
1311             sv_pvn
1312             sv_pvn_nomg
1313             sv_true
1314
1315       perl 5.004_05
1316             CopyD
1317             MoveD
1318             do_binmode
1319             my_bcopy
1320             save_aelem
1321             save_helem
1322
1323       perl 5.004
1324             GIMME_V
1325             G_VOID
1326             HePV
1327             HeSVKEY_set
1328             POPu
1329             SvSetMagicSV
1330             SvSetMagicSV_nosteal
1331             SvSetSV_nosteal
1332             SvTAINTED
1333             SvTAINTED_off
1334             SvTAINTED_on
1335             block_end
1336             block_gimme
1337             block_start
1338             call_list
1339             delimcpy
1340             form
1341             gv_autoload4
1342             gv_fetchmethod_autoload
1343             hv_delayfree_ent
1344             hv_free_ent
1345             ibcmp_locale
1346             intro_my
1347             my_failure_exit
1348             newSVpvf
1349             rsignal
1350             rsignal_state
1351             save_I16
1352             save_gp
1353             share_hek
1354             start_subparse
1355             sv_catpvf
1356             sv_catpvf_mg
1357             sv_cmp_locale
1358             sv_derived_from
1359             sv_magic_portable
1360             sv_setpvf
1361             sv_setpvf_mg
1362             sv_taint
1363             sv_tainted
1364             sv_untaint
1365             sv_vcatpvf
1366             sv_vcatpvf_mg
1367             sv_vcatpvfn
1368             sv_vsetpvf
1369             sv_vsetpvf_mg
1370             sv_vsetpvfn
1371             toLOWER_LC
1372             vnewSVpvf
1373             warner
1374
1375       perl 5.003_07
1376             HeHASH
1377             HeKEY
1378             HeKLEN
1379             HeSVKEY
1380             HeSVKEY_force
1381             HeVAL
1382             cv_const_sv
1383             do_open
1384             gv_efullname3
1385             gv_fullname3
1386             hv_delete_ent
1387             hv_exists_ent
1388             hv_fetch_ent
1389             hv_iterkeysv
1390             hv_ksplit
1391             hv_store_ent
1392             my_pclose
1393             my_popen
1394             sv_gets
1395             unsharepvn
1396

BUGS

1398       If you find any bugs, "Devel::PPPort" doesn't seem to build on your
1399       system, or any of its tests fail, please send a bug report to
1400       perlbug@perl.org <mailto:perlbug@perl.org>.
1401

AUTHORS

1403       · Version 1.x of Devel::PPPort was written by Kenneth Albanowski.
1404
1405       · Version 2.x was ported to the Perl core by Paul Marquess.
1406
1407       · Version 3.x was ported back to CPAN by Marcus Holland-Moritz.
1408
1409       · Versions >= 3.22 are maintained with support from Matthew Horsfall
1410         (alh).
1411
1413       Version 3.x, Copyright (C) 2004-2013, Marcus Holland-Moritz.
1414
1415                    Copyright (C) 2018, The perl5 porters
1416
1417       Version 2.x, Copyright (C) 2001, Paul Marquess.
1418
1419       Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
1420
1421       This program is free software; you can redistribute it and/or modify it
1422       under the same terms as Perl itself.
1423

SEE ALSO

1425       See h2xs, ppport.h.
1426
1427
1428
1429perl v5.30.0                      2019-07-26                         PPPort(3)
Impressum