This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Move the negative key -> utf8 flag conversion out to hv_delete
[perl5.git] / perlapi.h
index 3d74ecd..c761540 100644 (file)
--- a/perlapi.h
+++ b/perlapi.h
@@ -1,7 +1,18 @@
-/* !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
-   This file is built by embed.pl from data in embed.pl, pp.sym, intrpvar.h,
-   perlvars.h and thrdvar.h.  Any changes made here will be lost!
-*/
+/*
+ *    perlapi.h
+ *
+ *    Copyright (C) 1999, 2000, 2001, 2002, 2003, by Larry Wall and others
+ *
+ *    You may distribute under the terms of either the GNU General Public
+ *    License or the Artistic License, as specified in the README file.
+ *
+ * !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
+ * This file is built by embed.pl from data in embed.fnc, embed.pl,
+ * pp.sym, intrpvar.h, perlvars.h and thrdvar.h.
+ * Any changes made here will be lost!
+ *
+ * Edit those files and run 'make regen_headers' to effect changes.
+ */
 
 /* declare accessor functions for Perl variables */
 #ifndef __perlapi_h__
@@ -77,6 +88,8 @@ END_EXTERN_C
 #define PL_Argv                        (*Perl_IArgv_ptr(aTHX))
 #undef  PL_Cmd
 #define PL_Cmd                 (*Perl_ICmd_ptr(aTHX))
+#undef  PL_DBassertion
+#define PL_DBassertion         (*Perl_IDBassertion_ptr(aTHX))
 #undef  PL_DBcv
 #define PL_DBcv                        (*Perl_IDBcv_ptr(aTHX))
 #undef  PL_DBgv
@@ -103,6 +116,12 @@ END_EXTERN_C
 #define PL_MemParse            (*Perl_IMemParse_ptr(aTHX))
 #undef  PL_MemShared
 #define PL_MemShared           (*Perl_IMemShared_ptr(aTHX))
+#undef  PL_OpPtr
+#define PL_OpPtr               (*Perl_IOpPtr_ptr(aTHX))
+#undef  PL_OpSlab
+#define PL_OpSlab              (*Perl_IOpSlab_ptr(aTHX))
+#undef  PL_OpSpace
+#define PL_OpSpace             (*Perl_IOpSpace_ptr(aTHX))
 #undef  PL_Proc
 #define PL_Proc                        (*Perl_IProc_ptr(aTHX))
 #undef  PL_Sock
@@ -133,6 +152,10 @@ END_EXTERN_C
 #define PL_bufptr              (*Perl_Ibufptr_ptr(aTHX))
 #undef  PL_checkav
 #define PL_checkav             (*Perl_Icheckav_ptr(aTHX))
+#undef  PL_checkav_save
+#define PL_checkav_save                (*Perl_Icheckav_save_ptr(aTHX))
+#undef  PL_clocktick
+#define PL_clocktick           (*Perl_Iclocktick_ptr(aTHX))
 #undef  PL_collation_ix
 #define PL_collation_ix                (*Perl_Icollation_ix_ptr(aTHX))
 #undef  PL_collation_name
@@ -159,8 +182,6 @@ END_EXTERN_C
 #define PL_cop_seqmax          (*Perl_Icop_seqmax_ptr(aTHX))
 #undef  PL_copline
 #define PL_copline             (*Perl_Icopline_ptr(aTHX))
-#undef  PL_cred_mutex
-#define PL_cred_mutex          (*Perl_Icred_mutex_ptr(aTHX))
 #undef  PL_cryptseen
 #define PL_cryptseen           (*Perl_Icryptseen_ptr(aTHX))
 #undef  PL_cshlen
@@ -171,12 +192,12 @@ END_EXTERN_C
 #define PL_curcopdb            (*Perl_Icurcopdb_ptr(aTHX))
 #undef  PL_curstname
 #define PL_curstname           (*Perl_Icurstname_ptr(aTHX))
-#undef  PL_curthr
-#define PL_curthr              (*Perl_Icurthr_ptr(aTHX))
 #undef  PL_custom_op_descs
 #define PL_custom_op_descs     (*Perl_Icustom_op_descs_ptr(aTHX))
 #undef  PL_custom_op_names
 #define PL_custom_op_names     (*Perl_Icustom_op_names_ptr(aTHX))
+#undef  PL_cv_has_eval
+#define PL_cv_has_eval         (*Perl_Icv_has_eval_ptr(aTHX))
 #undef  PL_dbargs
 #define PL_dbargs              (*Perl_Idbargs_ptr(aTHX))
 #undef  PL_debstash
@@ -213,12 +234,6 @@ END_EXTERN_C
 #define PL_error_count         (*Perl_Ierror_count_ptr(aTHX))
 #undef  PL_euid
 #define PL_euid                        (*Perl_Ieuid_ptr(aTHX))
-#undef  PL_eval_cond
-#define PL_eval_cond           (*Perl_Ieval_cond_ptr(aTHX))
-#undef  PL_eval_mutex
-#define PL_eval_mutex          (*Perl_Ieval_mutex_ptr(aTHX))
-#undef  PL_eval_owner
-#define PL_eval_owner          (*Perl_Ieval_owner_ptr(aTHX))
 #undef  PL_eval_root
 #define PL_eval_root           (*Perl_Ieval_root_ptr(aTHX))
 #undef  PL_eval_start
@@ -235,8 +250,6 @@ END_EXTERN_C
 #define PL_expect              (*Perl_Iexpect_ptr(aTHX))
 #undef  PL_fdpid
 #define PL_fdpid               (*Perl_Ifdpid_ptr(aTHX))
-#undef  PL_fdpid_mutex
-#define PL_fdpid_mutex         (*Perl_Ifdpid_mutex_ptr(aTHX))
 #undef  PL_filemode
 #define PL_filemode            (*Perl_Ifilemode_ptr(aTHX))
 #undef  PL_forkprocess
@@ -253,6 +266,10 @@ END_EXTERN_C
 #define PL_glob_index          (*Perl_Iglob_index_ptr(aTHX))
 #undef  PL_globalstash
 #define PL_globalstash         (*Perl_Iglobalstash_ptr(aTHX))
+#undef  PL_hash_seed
+#define PL_hash_seed           (*Perl_Ihash_seed_ptr(aTHX))
+#undef  PL_hash_seed_set
+#define PL_hash_seed_set       (*Perl_Ihash_seed_set_ptr(aTHX))
 #undef  PL_he_arenaroot
 #define PL_he_arenaroot                (*Perl_Ihe_arenaroot_ptr(aTHX))
 #undef  PL_he_root
@@ -265,6 +282,8 @@ END_EXTERN_C
 #define PL_in_clean_all                (*Perl_Iin_clean_all_ptr(aTHX))
 #undef  PL_in_clean_objs
 #define PL_in_clean_objs       (*Perl_Iin_clean_objs_ptr(aTHX))
+#undef  PL_in_load_module
+#define PL_in_load_module      (*Perl_Iin_load_module_ptr(aTHX))
 #undef  PL_in_my
 #define PL_in_my               (*Perl_Iin_my_ptr(aTHX))
 #undef  PL_in_my_stash
@@ -337,6 +356,8 @@ END_EXTERN_C
 #define PL_linestr             (*Perl_Ilinestr_ptr(aTHX))
 #undef  PL_localpatches
 #define PL_localpatches                (*Perl_Ilocalpatches_ptr(aTHX))
+#undef  PL_lockhook
+#define PL_lockhook            (*Perl_Ilockhook_ptr(aTHX))
 #undef  PL_main_cv
 #define PL_main_cv             (*Perl_Imain_cv_ptr(aTHX))
 #undef  PL_main_root
@@ -389,12 +410,6 @@ END_EXTERN_C
 #define PL_nice_chunk_size     (*Perl_Inice_chunk_size_ptr(aTHX))
 #undef  PL_nomemok
 #define PL_nomemok             (*Perl_Inomemok_ptr(aTHX))
-#undef  PL_nthreads
-#define PL_nthreads            (*Perl_Inthreads_ptr(aTHX))
-#undef  PL_nthreads_cond
-#define PL_nthreads_cond       (*Perl_Inthreads_cond_ptr(aTHX))
-#undef  PL_nullstash
-#define PL_nullstash           (*Perl_Inullstash_ptr(aTHX))
 #undef  PL_numeric_compat1
 #define PL_numeric_compat1     (*Perl_Inumeric_compat1_ptr(aTHX))
 #undef  PL_numeric_local
@@ -449,6 +464,8 @@ END_EXTERN_C
 #define PL_perlio              (*Perl_Iperlio_ptr(aTHX))
 #undef  PL_pidstatus
 #define PL_pidstatus           (*Perl_Ipidstatus_ptr(aTHX))
+#undef  PL_ppid
+#define PL_ppid                        (*Perl_Ippid_ptr(aTHX))
 #undef  PL_preambleav
 #define PL_preambleav          (*Perl_Ipreambleav_ptr(aTHX))
 #undef  PL_preambled
@@ -467,10 +484,16 @@ END_EXTERN_C
 #define PL_ptr_table           (*Perl_Iptr_table_ptr(aTHX))
 #undef  PL_reentrant_buffer
 #define PL_reentrant_buffer    (*Perl_Ireentrant_buffer_ptr(aTHX))
+#undef  PL_reentrant_retint
+#define PL_reentrant_retint    (*Perl_Ireentrant_retint_ptr(aTHX))
 #undef  PL_regex_pad
 #define PL_regex_pad           (*Perl_Iregex_pad_ptr(aTHX))
 #undef  PL_regex_padav
 #define PL_regex_padav         (*Perl_Iregex_padav_ptr(aTHX))
+#undef  PL_rehash_seed
+#define PL_rehash_seed         (*Perl_Irehash_seed_ptr(aTHX))
+#undef  PL_rehash_seed_set
+#define PL_rehash_seed_set     (*Perl_Irehash_seed_set_ptr(aTHX))
 #undef  PL_replgv
 #define PL_replgv              (*Perl_Ireplgv_ptr(aTHX))
 #undef  PL_rsfp
@@ -479,20 +502,32 @@ END_EXTERN_C
 #define PL_rsfp_filters                (*Perl_Irsfp_filters_ptr(aTHX))
 #undef  PL_runops
 #define PL_runops              (*Perl_Irunops_ptr(aTHX))
+#undef  PL_runops_dbg
+#define PL_runops_dbg          (*Perl_Irunops_dbg_ptr(aTHX))
+#undef  PL_runops_std
+#define PL_runops_std          (*Perl_Irunops_std_ptr(aTHX))
 #undef  PL_savebegin
 #define PL_savebegin           (*Perl_Isavebegin_ptr(aTHX))
 #undef  PL_sawampersand
 #define PL_sawampersand                (*Perl_Isawampersand_ptr(aTHX))
-#undef  PL_sh_path
-#define PL_sh_path             (*Perl_Ish_path_ptr(aTHX))
+#undef  PL_sh_path_compat
+#define PL_sh_path_compat      (*Perl_Ish_path_compat_ptr(aTHX))
+#undef  PL_sharehook
+#define PL_sharehook           (*Perl_Isharehook_ptr(aTHX))
 #undef  PL_sig_pending
 #define PL_sig_pending         (*Perl_Isig_pending_ptr(aTHX))
 #undef  PL_sighandlerp
 #define PL_sighandlerp         (*Perl_Isighandlerp_ptr(aTHX))
+#undef  PL_signals
+#define PL_signals             (*Perl_Isignals_ptr(aTHX))
+#undef  PL_sort_RealCmp
+#define PL_sort_RealCmp                (*Perl_Isort_RealCmp_ptr(aTHX))
 #undef  PL_splitstr
 #define PL_splitstr            (*Perl_Isplitstr_ptr(aTHX))
 #undef  PL_srand_called
 #define PL_srand_called                (*Perl_Isrand_called_ptr(aTHX))
+#undef  PL_stashcache
+#define PL_stashcache          (*Perl_Istashcache_ptr(aTHX))
 #undef  PL_statusvalue
 #define PL_statusvalue         (*Perl_Istatusvalue_ptr(aTHX))
 #undef  PL_statusvalue_vms
@@ -503,8 +538,6 @@ END_EXTERN_C
 #define PL_stdingv             (*Perl_Istdingv_ptr(aTHX))
 #undef  PL_strtab
 #define PL_strtab              (*Perl_Istrtab_ptr(aTHX))
-#undef  PL_strtab_mutex
-#define PL_strtab_mutex                (*Perl_Istrtab_mutex_ptr(aTHX))
 #undef  PL_sub_generation
 #define PL_sub_generation      (*Perl_Isub_generation_ptr(aTHX))
 #undef  PL_sublex_info
@@ -517,10 +550,6 @@ END_EXTERN_C
 #define PL_sv_arenaroot                (*Perl_Isv_arenaroot_ptr(aTHX))
 #undef  PL_sv_count
 #define PL_sv_count            (*Perl_Isv_count_ptr(aTHX))
-#undef  PL_sv_lock_mutex
-#define PL_sv_lock_mutex       (*Perl_Isv_lock_mutex_ptr(aTHX))
-#undef  PL_sv_mutex
-#define PL_sv_mutex            (*Perl_Isv_mutex_ptr(aTHX))
 #undef  PL_sv_no
 #define PL_sv_no               (*Perl_Isv_no_ptr(aTHX))
 #undef  PL_sv_objcount
@@ -531,26 +560,22 @@ END_EXTERN_C
 #define PL_sv_undef            (*Perl_Isv_undef_ptr(aTHX))
 #undef  PL_sv_yes
 #define PL_sv_yes              (*Perl_Isv_yes_ptr(aTHX))
-#undef  PL_svref_mutex
-#define PL_svref_mutex         (*Perl_Isvref_mutex_ptr(aTHX))
 #undef  PL_sys_intern
 #define PL_sys_intern          (*Perl_Isys_intern_ptr(aTHX))
 #undef  PL_taint_warn
 #define PL_taint_warn          (*Perl_Itaint_warn_ptr(aTHX))
 #undef  PL_tainting
 #define PL_tainting            (*Perl_Itainting_ptr(aTHX))
-#undef  PL_threadnum
-#define PL_threadnum           (*Perl_Ithreadnum_ptr(aTHX))
-#undef  PL_threads_mutex
-#define PL_threads_mutex       (*Perl_Ithreads_mutex_ptr(aTHX))
-#undef  PL_threadsv_names
-#define PL_threadsv_names      (*Perl_Ithreadsv_names_ptr(aTHX))
-#undef  PL_thrsv
-#define PL_thrsv               (*Perl_Ithrsv_ptr(aTHX))
+#undef  PL_threadhook
+#define PL_threadhook          (*Perl_Ithreadhook_ptr(aTHX))
 #undef  PL_tokenbuf
 #define PL_tokenbuf            (*Perl_Itokenbuf_ptr(aTHX))
 #undef  PL_uid
 #define PL_uid                 (*Perl_Iuid_ptr(aTHX))
+#undef  PL_unicode
+#define PL_unicode             (*Perl_Iunicode_ptr(aTHX))
+#undef  PL_unlockhook
+#define PL_unlockhook          (*Perl_Iunlockhook_ptr(aTHX))
 #undef  PL_unsafe
 #define PL_unsafe              (*Perl_Iunsafe_ptr(aTHX))
 #undef  PL_utf8_alnum
@@ -567,6 +592,10 @@ END_EXTERN_C
 #define PL_utf8_digit          (*Perl_Iutf8_digit_ptr(aTHX))
 #undef  PL_utf8_graph
 #define PL_utf8_graph          (*Perl_Iutf8_graph_ptr(aTHX))
+#undef  PL_utf8_idcont
+#define PL_utf8_idcont         (*Perl_Iutf8_idcont_ptr(aTHX))
+#undef  PL_utf8_idstart
+#define PL_utf8_idstart                (*Perl_Iutf8_idstart_ptr(aTHX))
 #undef  PL_utf8_lower
 #define PL_utf8_lower          (*Perl_Iutf8_lower_ptr(aTHX))
 #undef  PL_utf8_mark
@@ -589,6 +618,8 @@ END_EXTERN_C
 #define PL_utf8_upper          (*Perl_Iutf8_upper_ptr(aTHX))
 #undef  PL_utf8_xdigit
 #define PL_utf8_xdigit         (*Perl_Iutf8_xdigit_ptr(aTHX))
+#undef  PL_utf8locale
+#define PL_utf8locale          (*Perl_Iutf8locale_ptr(aTHX))
 #undef  PL_uudmap
 #define PL_uudmap              (*Perl_Iuudmap_ptr(aTHX))
 #undef  PL_warnhook
@@ -699,8 +730,6 @@ END_EXTERN_C
 #define PL_efloatsize          (*Perl_Tefloatsize_ptr(aTHX))
 #undef  PL_errors
 #define PL_errors              (*Perl_Terrors_ptr(aTHX))
-#undef  PL_extralen
-#define PL_extralen            (*Perl_Textralen_ptr(aTHX))
 #undef  PL_firstgv
 #define PL_firstgv             (*Perl_Tfirstgv_ptr(aTHX))
 #undef  PL_formtarget
@@ -785,20 +814,10 @@ END_EXTERN_C
 #define PL_reg_starttry                (*Perl_Treg_starttry_ptr(aTHX))
 #undef  PL_reg_sv
 #define PL_reg_sv              (*Perl_Treg_sv_ptr(aTHX))
-#undef  PL_reg_whilem_seen
-#define PL_reg_whilem_seen     (*Perl_Treg_whilem_seen_ptr(aTHX))
 #undef  PL_regbol
 #define PL_regbol              (*Perl_Tregbol_ptr(aTHX))
 #undef  PL_regcc
 #define PL_regcc               (*Perl_Tregcc_ptr(aTHX))
-#undef  PL_regcode
-#define PL_regcode             (*Perl_Tregcode_ptr(aTHX))
-#undef  PL_regcomp_parse
-#define PL_regcomp_parse       (*Perl_Tregcomp_parse_ptr(aTHX))
-#undef  PL_regcomp_rx
-#define PL_regcomp_rx          (*Perl_Tregcomp_rx_ptr(aTHX))
-#undef  PL_regcompat1
-#define PL_regcompat1          (*Perl_Tregcompat1_ptr(aTHX))
 #undef  PL_regcompp
 #define PL_regcompp            (*Perl_Tregcompp_ptr(aTHX))
 #undef  PL_regdata
@@ -811,8 +830,6 @@ END_EXTERN_C
 #define PL_regeol              (*Perl_Tregeol_ptr(aTHX))
 #undef  PL_regexecp
 #define PL_regexecp            (*Perl_Tregexecp_ptr(aTHX))
-#undef  PL_regflags
-#define PL_regflags            (*Perl_Tregflags_ptr(aTHX))
 #undef  PL_regfree
 #define PL_regfree             (*Perl_Tregfree_ptr(aTHX))
 #undef  PL_regindent
@@ -831,26 +848,18 @@ END_EXTERN_C
 #define PL_reglastparen                (*Perl_Treglastparen_ptr(aTHX))
 #undef  PL_regnarrate
 #define PL_regnarrate          (*Perl_Tregnarrate_ptr(aTHX))
-#undef  PL_regnaughty
-#define PL_regnaughty          (*Perl_Tregnaughty_ptr(aTHX))
 #undef  PL_regnpar
 #define PL_regnpar             (*Perl_Tregnpar_ptr(aTHX))
 #undef  PL_regprecomp
 #define PL_regprecomp          (*Perl_Tregprecomp_ptr(aTHX))
 #undef  PL_regprogram
 #define PL_regprogram          (*Perl_Tregprogram_ptr(aTHX))
-#undef  PL_regsawback
-#define PL_regsawback          (*Perl_Tregsawback_ptr(aTHX))
-#undef  PL_regseen
-#define PL_regseen             (*Perl_Tregseen_ptr(aTHX))
 #undef  PL_regsize
 #define PL_regsize             (*Perl_Tregsize_ptr(aTHX))
 #undef  PL_regstartp
 #define PL_regstartp           (*Perl_Tregstartp_ptr(aTHX))
 #undef  PL_regtill
 #define PL_regtill             (*Perl_Tregtill_ptr(aTHX))
-#undef  PL_regxend
-#define PL_regxend             (*Perl_Tregxend_ptr(aTHX))
 #undef  PL_restartop
 #define PL_restartop           (*Perl_Trestartop_ptr(aTHX))
 #undef  PL_retstack
@@ -879,10 +888,6 @@ END_EXTERN_C
 #define PL_screamnext          (*Perl_Tscreamnext_ptr(aTHX))
 #undef  PL_secondgv
 #define PL_secondgv            (*Perl_Tsecondgv_ptr(aTHX))
-#undef  PL_seen_evals
-#define PL_seen_evals          (*Perl_Tseen_evals_ptr(aTHX))
-#undef  PL_seen_zerolen
-#define PL_seen_zerolen                (*Perl_Tseen_zerolen_ptr(aTHX))
 #undef  PL_sortcop
 #define PL_sortcop             (*Perl_Tsortcop_ptr(aTHX))
 #undef  PL_sortcxix
@@ -929,10 +934,14 @@ END_EXTERN_C
 #define PL_No                  (*Perl_GNo_ptr(NULL))
 #undef  PL_Yes
 #define PL_Yes                 (*Perl_GYes_ptr(NULL))
+#undef  PL_csighandlerp
+#define PL_csighandlerp                (*Perl_Gcsighandlerp_ptr(NULL))
 #undef  PL_curinterp
 #define PL_curinterp           (*Perl_Gcurinterp_ptr(NULL))
 #undef  PL_do_undump
 #define PL_do_undump           (*Perl_Gdo_undump_ptr(NULL))
+#undef  PL_dollarzero_mutex
+#define PL_dollarzero_mutex    (*Perl_Gdollarzero_mutex_ptr(NULL))
 #undef  PL_hexdigit
 #define PL_hexdigit            (*Perl_Ghexdigit_ptr(NULL))
 #undef  PL_malloc_mutex
@@ -941,14 +950,12 @@ END_EXTERN_C
 #define PL_op_mutex            (*Perl_Gop_mutex_ptr(NULL))
 #undef  PL_patleave
 #define PL_patleave            (*Perl_Gpatleave_ptr(NULL))
-#undef  PL_runops_dbg
-#define PL_runops_dbg          (*Perl_Grunops_dbg_ptr(NULL))
-#undef  PL_runops_std
-#define PL_runops_std          (*Perl_Grunops_std_ptr(NULL))
-#undef  PL_sharedsv_space
-#define PL_sharedsv_space      (*Perl_Gsharedsv_space_ptr(NULL))
-#undef  PL_sharedsv_space_mutex
-#define PL_sharedsv_space_mutex        (*Perl_Gsharedsv_space_mutex_ptr(NULL))
+#undef  PL_sh_path
+#define PL_sh_path             (*Perl_Gsh_path_ptr(NULL))
+#undef  PL_sigfpe_saved
+#define PL_sigfpe_saved                (*Perl_Gsigfpe_saved_ptr(NULL))
+#undef  PL_sv_placeholder
+#define PL_sv_placeholder      (*Perl_Gsv_placeholder_ptr(NULL))
 #undef  PL_thr_key
 #define PL_thr_key             (*Perl_Gthr_key_ptr(NULL))