@@ -192,7 +192,7 @@ typedef int perl_key;
192192# define Perl_croak_xs_usage dll_Perl_croak_xs_usage
193193# endif
194194# ifndef PROTO
195- # ifdef PERL_IMPLICIT_CONTEXT
195+ # if defined( PERL_IMPLICIT_CONTEXT )
196196# define Perl_croak_nocontext dll_Perl_croak_nocontext
197197# endif
198198# define Perl_call_argv dll_Perl_call_argv
@@ -312,6 +312,9 @@ typedef int perl_key;
312312# ifdef PERL_USE_THREAD_LOCAL
313313# define PL_current_context *dll_PL_current_context
314314# endif
315+ # if defined(DYNAMIC_PERL ) && ((PERL_REVISION == 5 ) && (PERL_VERSION >= 38 ))
316+ # define PL_memory_wrap *dll_PL_memory_wrap
317+ # endif
315318# define Perl_hv_iternext_flags dll_Perl_hv_iternext_flags
316319# define Perl_hv_iterinit dll_Perl_hv_iterinit
317320# define Perl_hv_iterkey dll_Perl_hv_iterkey
@@ -352,7 +355,7 @@ static void (*Perl_croak_xs_usage)(pTHX_ const CV *const, const char *const para
352355 __attribute__noreturn__ ;
353356# endif
354357# endif
355- # ifdef PERL_IMPLICIT_CONTEXT
358+ # if defined( PERL_IMPLICIT_CONTEXT )
356359static void (* Perl_croak_nocontext )(const char * , ...) __attribute__noreturn__ ;
357360# endif
358361static I32 (* Perl_dowantarray )(pTHX );
@@ -484,6 +487,9 @@ static perl_key* (*Perl_Gthr_key_ptr)_((pTHX));
484487# ifdef PERL_USE_THREAD_LOCAL
485488static void * * dll_PL_current_context ;
486489# endif
490+ # if defined(DYNAMIC_PERL ) && ((PERL_REVISION == 5 ) && (PERL_VERSION >= 38 ))
491+ static const char * * dll_PL_memory_wrap ;
492+ # endif
487493static void (* boot_DynaLoader )_ ((pTHX_ CV * ));
488494static HE * (* Perl_hv_iternext_flags )(pTHX_ HV * , I32 );
489495static I32 (* Perl_hv_iterinit )(pTHX_ HV * );
@@ -633,9 +639,12 @@ static struct {
633639# ifdef USE_ITHREADS
634640 {"PL_thr_key" , (PERL_PROC * )& dll_PL_thr_key },
635641# endif
636- # ifdef PERL_USE_THREAD_LOCAL
642+ # ifdef PERL_USE_THREAD_LOCAL
637643 {"PL_current_context" , (PERL_PROC * )& dll_PL_current_context },
638- # endif
644+ # endif
645+ # if defined(DYNAMIC_PERL ) && ((PERL_REVISION == 5 ) && (PERL_VERSION >= 38 ))
646+ {"PL_memory_wrap" , (PERL_PROC * )& dll_PL_memory_wrap },
647+ # endif
639648# else
640649 {"Perl_Idefgv_ptr" , (PERL_PROC * )& Perl_Idefgv_ptr },
641650 {"Perl_Ierrgv_ptr" , (PERL_PROC * )& Perl_Ierrgv_ptr },
@@ -1475,6 +1484,19 @@ vim_IOLayer_init(void)
14751484// during build time. Manually fix it here by redirecting these functions
14761485// towards the dynamically loaded version.
14771486
1487+ # if (PERL_REVISION == 5 ) && (PERL_VERSION >= 38 )
1488+ # undef Perl_croak_nocontext
1489+ void Perl_croak_nocontext (const char * pat , ...)
1490+ {
1491+ dTHX ;
1492+ va_list args ;
1493+ va_start (args , pat );
1494+ (* dll_Perl_croak_nocontext )(pat , & args );
1495+ NOT_REACHED ; /* NOTREACHED */
1496+ va_end (args );
1497+ }
1498+ # endif
1499+
14781500# if (PERL_REVISION == 5 ) && (PERL_VERSION >= 18 )
14791501# undef Perl_sv_free2
14801502void Perl_sv_free2 (pTHX_ SV * const sv , const U32 refcnt )
0 commit comments