On Thu, 20 Jun 2019 02:51:32 -0700, pali@cpan.org wrote: > On Thursday 20 June 2019 02:49:00 Tony Cook via RT wrote: > > On Thu, Jun 20, 2019 at 10:18:40AM +0200, pali@cpan.org wrote: > > > > > > doesn't solve this? > > > > > > > > > > So is clobbering of $@ in eval_sv() possible or not? > > > > > > > > Evals called within whatever code eval_sv() calls can still > > > > clobber $@. > > > > > > I tried to play with it, but I was not able to write any code which > > > would clobber $@. And provide incorrect result with SvROK + SvTRUE > > > checks. So it is really possible? > > > > It has no effect on that, I meant that: > > > > ./perl -Ilib -MXS::APItest -le '$@ = "foo"; eval_sv("eval q/1/", > > G_KEEPERR); print $@' > > > > $@ isn't preserved. > > I mean $@ clobbering in eval_pv(). E.g. when eval_pv() is called with > croak_on_error=1. eval_pv() never uses (and never will for compatibility) the G_KEEPERR flag when calling eval_sv(), so it will always clobber $@. Tony --- via perlbug: queue: perl5 status: open https://rt.perl.org/Ticket/Display.html?id=134177Thread Previous