Maintaining the Perl 5 Core: Report for Month 33
Mon, 01-Aug-2016 by
Karen Pauley
edit post
_Dave Mitchell writes:_
I didn't really do much that stands this month; I just reduced the backlog in my p5p mailbox a bit, and worked on several miscellaneous tickets.
The most noteworthy bugfix related to $@ getting overwritten while exiting an eval scope. Earlier work by Zefram had ensured that $@ is assigned to in a late stage of scope unwinding, but it turns out that in void context or after a die, the temps stack was still being freed *after* $@ had been assigned to, which could result in destructors being called that could overwrite $@. (My work last year on the context stack meant that this had already been fixed for scalar and list context evals). For example:
bc. sub DESTROY { $@ = "spurious\n" }
eval { die ((bless []) ? "foo" : "bar") };
print $@; # prints "spurious" rather than "foo"
I did some refactoring of the eval code and then provided a fix, but this broke a Variable::Magic test and has been temporarily reverted.
**Summary**
bq. 11:59 "Confused by eval behavior" thread
0:28 [perl #124216] Perl_sv_clear: Assertion
1:57 [perl #127759] die inside sort comparitor causes SV error
1:23 [perl #127774] segfault in caller()
2:54 [perl #127834] @INC issues
0:50 [perl #127875] Blead breaks Scope::Upper
0:29 [perl #128189] Assert fail in sv.c
0:22 [perl #128238] Assert fail in gv.c
0:41 [perl #128252] Assert fail in op.c sub{\@0[0]=0}
3:26 [perl #128254] Taint-mode assert fail in Perl_magic_clearisa
0:45 [perl #128307] Bleadperl v5.25.0-40-ga52f2cc breaks GAAS/perl-lisp-0.06.tar.gz
2:21 fix Coro to run under 5.24.0
1:00 fix Time::HiRes utime.t test hanging
1:39 fix build warnings and smoke failures
12:44 process p5p mailbox
0:58 reformat perl -V output
3:37 sort out (mini)perlmain.c generation
**47:33 Total (HH::MM)**
As of 2016/06/30: since the beginning of the grant:
bq. 141.6 weeks
1968.0 total hours
13.9 average hours per week
There are 32 hours left on the grant.
Comments (0)