Skip Menu |

This queue is for tickets about the Future-AsyncAwait CPAN distribution.

Report information
The Basics
Id: 133517
Status: resolved
Priority: 0/
Queue: Future-AsyncAwait

People
Owner: Nobody in particular
Requestors: leonerd-cpan [...] leonerd.org.uk
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.44
Fixed in: 0.45



Subject: Test fails "SvPADMY" on -DDEBUGGING
Debugging perls yield two possibly-related test failures: t/09await-cancel-block.t ........ perl5.20.3: inline.h:171: S_SvPADSTALE_off: Assertion `SvFLAGS(sv) & SVs_PADMY' failed. t/80await+dynamically.t ......... 1/? perl5.20.3: scope.c:1039: Perl_leave_scope: Assertion `SvPADMY(sv)' failed. -- Paul Evans
Two separate bugs. The attached fixes one of them. -- Paul Evans
Subject: rt133517-a1.patch
=== modified file 'lib/Future/AsyncAwait.xs' --- old/lib/Future/AsyncAwait.xs 2020-10-22 13:33:25 +0000 +++ new/lib/Future/AsyncAwait.xs 2020-10-22 15:52:07 +0000 @@ -1812,7 +1812,8 @@ PADOFFSET precancel_padix = PL_op->op_targ; if(precancel_padix) { - PAD_SVl(precancel_padix) = (SV *)newAV(); + SV *sv = PAD_SVl(precancel_padix) = (SV *)newAV(); + SvPADMY_on(sv); save_clearsv(&PAD_SVl(precancel_padix)); }
Second was caused by a stale unit test; copying the updated one out of Syntax-Keyword-Dynamically fixes that. -- Paul Evans