/* NO_EMBED is no longer supported. i.e. EMBED is always active. */
-/* provide binary compatible (but inconsistent) names */
-#if defined(PERL_BINCOMPAT_5005)
-# define Perl_call_atexit perl_atexit
-# define Perl_eval_sv perl_eval_sv
-# define Perl_eval_pv perl_eval_pv
-# define Perl_call_argv perl_call_argv
-# define Perl_call_method perl_call_method
-# define Perl_call_pv perl_call_pv
-# define Perl_call_sv perl_call_sv
-# define Perl_get_av perl_get_av
-# define Perl_get_cv perl_get_cv
-# define Perl_get_hv perl_get_hv
-# define Perl_get_sv perl_get_sv
-# define Perl_init_i18nl10n perl_init_i18nl10n
-# define Perl_init_i18nl14n perl_init_i18nl14n
-# define Perl_new_collate perl_new_collate
-# define Perl_new_ctype perl_new_ctype
-# define Perl_new_numeric perl_new_numeric
-# define Perl_require_pv perl_require_pv
-# define Perl_safesyscalloc Perl_safecalloc
-# define Perl_safesysfree Perl_safefree
-# define Perl_safesysmalloc Perl_safemalloc
-# define Perl_safesysrealloc Perl_saferealloc
-# define Perl_set_numeric_local perl_set_numeric_local
-# define Perl_set_numeric_standard perl_set_numeric_standard
-/* malloc() pollution was the default in earlier versions, so enable
- * it for bincompat; but not for systems that used to do prevent that,
- * or when they ask for {HIDE,EMBED}MYMALLOC */
-# if !defined(EMBEDMYMALLOC) && !defined(HIDEMYMALLOC)
-# if !defined(NeXT) && !defined(__NeXT) && !defined(__MACHTEN__) && \
- !defined(__QNX__)
-# define PERL_POLLUTE_MALLOC
-# endif
-# endif
-#endif
-
/* Hide global symbols */
#if !defined(PERL_IMPLICIT_CONTEXT)
#define do_close Perl_do_close
#define do_eof Perl_do_eof
#define do_exec Perl_do_exec
+#if defined(WIN32)
+#define do_aspawn Perl_do_aspawn
+#define do_spawn Perl_do_spawn
+#define do_spawn_nowait Perl_do_spawn_nowait
+#endif
#if !defined(WIN32)
#define do_exec3 Perl_do_exec3
#endif
#define hv_iterkeysv Perl_hv_iterkeysv
#define hv_iternext Perl_hv_iternext
#define hv_iternextsv Perl_hv_iternextsv
+#define hv_iternext_flags Perl_hv_iternext_flags
#define hv_iterval Perl_hv_iterval
#define hv_ksplit Perl_hv_ksplit
#define hv_magic Perl_hv_magic
#define hv_store Perl_hv_store
#define hv_store_ent Perl_hv_store_ent
+#define hv_store_flags Perl_hv_store_flags
#define hv_undef Perl_hv_undef
#define ibcmp Perl_ibcmp
#define ibcmp_locale Perl_ibcmp_locale
#define is_utf8_alnum Perl_is_utf8_alnum
#define is_utf8_alnumc Perl_is_utf8_alnumc
#define is_utf8_idfirst Perl_is_utf8_idfirst
+#define is_utf8_idcont Perl_is_utf8_idcont
#define is_utf8_alpha Perl_is_utf8_alpha
#define is_utf8_ascii Perl_is_utf8_ascii
#define is_utf8_space Perl_is_utf8_space
#define sv_setpvf Perl_sv_setpvf
#define sv_vsetpvf Perl_sv_vsetpvf
#define sv_setiv Perl_sv_setiv
-#define sv_setpviv Perl_sv_setpviv
#define sv_setuv Perl_sv_setuv
#define sv_setnv Perl_sv_setnv
#define sv_setref_iv Perl_sv_setref_iv
#define sv_setpvf_mg Perl_sv_setpvf_mg
#define sv_vsetpvf_mg Perl_sv_vsetpvf_mg
#define sv_setiv_mg Perl_sv_setiv_mg
-#define sv_setpviv_mg Perl_sv_setpviv_mg
#define sv_setuv_mg Perl_sv_setuv_mg
#define sv_setnv_mg Perl_sv_setnv_mg
#define sv_setpv_mg Perl_sv_setpv_mg
#define hv_magic_check S_hv_magic_check
#define unshare_hek_or_pvn S_unshare_hek_or_pvn
#define share_hek_flags S_share_hek_flags
-#define hv_store_flags S_hv_store_flags
#define hv_fetch_flags S_hv_fetch_flags
#define hv_notallowed S_hv_notallowed
#endif
#define do_close(a,b) Perl_do_close(aTHX_ a,b)
#define do_eof(a) Perl_do_eof(aTHX_ a)
#define do_exec(a) Perl_do_exec(aTHX_ a)
+#if defined(WIN32)
+#define do_aspawn(a,b,c) Perl_do_aspawn(aTHX_ a,b,c)
+#define do_spawn(a) Perl_do_spawn(aTHX_ a)
+#define do_spawn_nowait(a) Perl_do_spawn_nowait(aTHX_ a)
+#endif
#if !defined(WIN32)
#define do_exec3(a,b,c) Perl_do_exec3(aTHX_ a,b,c)
#endif
#define hv_iterkeysv(a) Perl_hv_iterkeysv(aTHX_ a)
#define hv_iternext(a) Perl_hv_iternext(aTHX_ a)
#define hv_iternextsv(a,b,c) Perl_hv_iternextsv(aTHX_ a,b,c)
+#define hv_iternext_flags(a,b) Perl_hv_iternext_flags(aTHX_ a,b)
#define hv_iterval(a,b) Perl_hv_iterval(aTHX_ a,b)
#define hv_ksplit(a,b) Perl_hv_ksplit(aTHX_ a,b)
#define hv_magic(a,b,c) Perl_hv_magic(aTHX_ a,b,c)
#define hv_store(a,b,c,d,e) Perl_hv_store(aTHX_ a,b,c,d,e)
#define hv_store_ent(a,b,c,d) Perl_hv_store_ent(aTHX_ a,b,c,d)
+#define hv_store_flags(a,b,c,d,e,f) Perl_hv_store_flags(aTHX_ a,b,c,d,e,f)
#define hv_undef(a) Perl_hv_undef(aTHX_ a)
#define ibcmp(a,b,c) Perl_ibcmp(aTHX_ a,b,c)
#define ibcmp_locale(a,b,c) Perl_ibcmp_locale(aTHX_ a,b,c)
#define is_utf8_alnum(a) Perl_is_utf8_alnum(aTHX_ a)
#define is_utf8_alnumc(a) Perl_is_utf8_alnumc(aTHX_ a)
#define is_utf8_idfirst(a) Perl_is_utf8_idfirst(aTHX_ a)
+#define is_utf8_idcont(a) Perl_is_utf8_idcont(aTHX_ a)
#define is_utf8_alpha(a) Perl_is_utf8_alpha(aTHX_ a)
#define is_utf8_ascii(a) Perl_is_utf8_ascii(aTHX_ a)
#define is_utf8_space(a) Perl_is_utf8_space(aTHX_ a)
#define sv_reset(a,b) Perl_sv_reset(aTHX_ a,b)
#define sv_vsetpvf(a,b,c) Perl_sv_vsetpvf(aTHX_ a,b,c)
#define sv_setiv(a,b) Perl_sv_setiv(aTHX_ a,b)
-#define sv_setpviv(a,b) Perl_sv_setpviv(aTHX_ a,b)
#define sv_setuv(a,b) Perl_sv_setuv(aTHX_ a,b)
#define sv_setnv(a,b) Perl_sv_setnv(aTHX_ a,b)
#define sv_setref_iv(a,b,c) Perl_sv_setref_iv(aTHX_ a,b,c)
#define sv_catsv_mg(a,b) Perl_sv_catsv_mg(aTHX_ a,b)
#define sv_vsetpvf_mg(a,b,c) Perl_sv_vsetpvf_mg(aTHX_ a,b,c)
#define sv_setiv_mg(a,b) Perl_sv_setiv_mg(aTHX_ a,b)
-#define sv_setpviv_mg(a,b) Perl_sv_setpviv_mg(aTHX_ a,b)
#define sv_setuv_mg(a,b) Perl_sv_setuv_mg(aTHX_ a,b)
#define sv_setnv_mg(a,b) Perl_sv_setnv_mg(aTHX_ a,b)
#define sv_setpv_mg(a,b) Perl_sv_setpv_mg(aTHX_ a,b)
#define hv_magic_check(a,b,c) S_hv_magic_check(aTHX_ a,b,c)
#define unshare_hek_or_pvn(a,b,c,d) S_unshare_hek_or_pvn(aTHX_ a,b,c,d)
#define share_hek_flags(a,b,c,d) S_share_hek_flags(aTHX_ a,b,c,d)
-#define hv_store_flags(a,b,c,d,e,f) S_hv_store_flags(aTHX_ a,b,c,d,e,f)
#define hv_fetch_flags(a,b,c,d,e) S_hv_fetch_flags(aTHX_ a,b,c,d,e)
#define hv_notallowed(a,b,c,d) S_hv_notallowed(aTHX_ a,b,c,d)
#endif
# endif
#define expect_number(a) S_expect_number(aTHX_ a)
# if defined(USE_ITHREADS)
-#define gv_share(a) S_gv_share(aTHX_ a)
+#define gv_share(a,b) S_gv_share(aTHX_ a,b)
# endif
#endif
#if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT)
# define sv_setptrref(rv,ptr) sv_setref_iv(rv,Nullch,PTR2IV(ptr))
#endif
-#if !defined(PERL_CORE) && !defined(PERL_NOCOMPAT) && !defined(PERL_BINCOMPAT_5005)
+#if !defined(PERL_CORE) && !defined(PERL_NOCOMPAT)
/* Compatibility for various misnamed functions. All functions
in the API that begin with "perl_" (not "Perl_") take an explicit