X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FScope-Upper.git;a=blobdiff_plain;f=Upper.xs;fp=Upper.xs;h=7d994fcdf5e83105e985ca71da13416ca6da1828;hp=0c762de1dcb947d420bd265d01231d8cec433d7e;hb=c8fb3ada01d8c1a6ac1a37778edb0fc9164d7bf1;hpb=ef4ac48db70f6d8dcaa21e6b67e7fbec7a50cf7b diff --git a/Upper.xs b/Upper.xs index 0c762de..7d994fc 100644 --- a/Upper.xs +++ b/Upper.xs @@ -3136,7 +3136,9 @@ PPCODE: /* warnings (9) */ { SV *mask = NULL; -#if XSH_HAS_PERL(5, 9, 4) +#if XSH_HAS_PERL(5, 37, 6) + char *old_warnings = cop->cop_warnings; +#elif XSH_HAS_PERL(5, 9, 4) STRLEN *old_warnings = cop->cop_warnings; #else SV *old_warnings = cop->cop_warnings; @@ -3169,7 +3171,9 @@ context_info_warnings_on: if (!mask) mask = su_newmortal_pvn(WARN_ALLstring, WARNsize); } else { -#if XSH_HAS_PERL(5, 9, 4) +#if XSH_HAS_PERL(5, 37, 6) + mask = su_newmortal_pvn((char *) old_warnings, RCPV_LEN(old_warnings)); +#elif XSH_HAS_PERL(5, 9, 4) mask = su_newmortal_pvn((char *) (old_warnings + 1), old_warnings[0]); #else mask = sv_mortalcopy(old_warnings);