Maintaining Perl 5: Grant Report for February 2015

No Comments

Tony Cook writes:

Approximately 55 tickets were reviewed or worked on, and 10 patches were applied.

[perl #123784] shows perl's dependency on other system tools, in this case there were two issues when using GCC 5.0.

First, with GCC 5.0, by default the pre-processor with generate #line entries showing the origin of the definition of a macro that's been replaced, so the pre-processor was producing output from:

  "EDOM" [[ EDOM ]]

something like:

  #line "errno.c", 1
  "EDOM" [[
  #line "somesystemheader", 100
            33
  #line "errno.c", 1
                ]]

instead of the expected:

  "EDOM" [[ 33 ]]

which ext/Errno/ 's parser couldn't handle.

The other change was expressing compiler defined macros in hex instead of decimal.

Older versions of GCC define integer constants in decimal:

  # 4.7.2
  $ echo __LONG_MAX__| gcc -E -P -
  9223372036854775807L

while GCC 5.0 defines them in hex:

  # 5.0
  $ echo __LONG_MAX__| gcc -E -P -
  0x7fffffffffffffffL

which the h2ph parser converted to code like:

  unless (defined &__LONG_MAX__) { sub __LONG_MAX__() { &0x7fffffffffffffffL } }

because the preamble code generator didn't handle hex numbers. The naive solution is to output:

  unless (defined &__LONG_MAX__) { sub __LONG_MAX__() { 0x7fffffffffffffff } }

but this produces compile-time warnings when the pre-defined macros include hex constants that don't fit in a UV. Since the end-developer might not even be using these particular constants I changed them into run-time warnings, so the code generated for large constants becomes:

  unless (defined &__LONG_MAX__) { sub __LONG_MAX__() { hex('0x7fffffffffffffff') } }
HoursActivity
2.08#123011 test strange platforms to update patch
0.85#123145 review
#123145 try to understand behaviour
4.96Review 5.22 blockers, #123202
#123202 callgrind, review code and sprout's patch, produce
and test a patch, comment
#123202 add a test to the patch
#123202 review, testing
#123202 apply to blead
0.58#123218 re-test, apply to blead and comment
4.60#123554 IRIX 64 test issue - review mail from jhi, review code and reply
#123554 IRIX issue- review config.sh, debugging, produce a patch, mail jhi
#123554 more follow-up, minor patch fix, push to blead
0.73#123558 fail to reproduce in blead, reproduce on reporrted
commit, start bisect
0.40#123580 review discussion, testing, close ticket
0.67#123620 review and comment
7.24#123638 (security)
#123638 (security) updates, testing
#123638 (security) testing
#123638 comment
#123638 (security)
0.48#123647 (security) review, testing, comment
0.15#123685 review discussion
0.40#123704 test and push to blead
0.07#123714 review and comment
1.13#123717 try to reproduce
1.80#123721 review and comment
0.47#123738 review, testing
1.37#123739 review Tux's test code
#123739 debug [Tux]'s eol.t, comment and close
0.22#123743 review
0.23#123751 review and comment
0.75#123752 comment
#123752 research and comment
1.17#123754 (security) review, debugging
0.43#123775 review discussion and comment
7.18#123784 review, start gcc svn up
#123784 start gcc 5.0 build
#123784 install gcc and test, debug and produce a patch, comment
#123784 review discussion and patch
#123784 test Errno_pm.PL patch, try to resolve h2ph issue
#123784 testing, comment with patch
#123784 review discussion, adjust patch and comment
#123784 retest and apply to blead, perldelta, comment
#123784 review and test ppisar's patch, and apply to
blead. Also review Gisles unticketed hp-ux hints patch and comment
2.72#123786 review and comment
#123786 review discussion, testing, produce a fix, comment
with patch, create 123921
#123786 start bisect for blead leaks
#123786 review and comment
0.77#123790 reproduce, try to debug
0.27#123791 (security) comment with rejection
0.17#123792 (security) comment with rejection
0.17#123795 review and fix subject
1.60#123831 review, download icc network installer and start install
#123831 testing with icc 15, comment
1.84#123836 review, research and comment
#123836 make a patch
#123836 retest and apply to blead, comment
0.88#123837 review patch, test and apply to blead, review
makefile.mk deps
0.65#123844 review, test and apply to blead
0.92#123851 review discussion and comment
#123851 close ticket per OP request
0.65#123853 testing, research and comment
3.03#123860 (security) debug, produce a patch and comment
#123860 write a test, update old patch and comment
0.90#123865 reproduce, try to debug
0.32#123866 apply to blead
9.20#123879 review, review commits, prep for testing/debugging
#123879 fail to reproduce at various commits/build options
#123879 reproduce and comment
#123879 debugging
#123879 prep
#123879 debugging and comment
0.53#123904 review and try to work out a solution
0.10#123905 comment
0.27#123907 research and comment
0.13#123918 review dicsussion
0.37#123922 finish bisect, further tests and report issue
0.93#123945 encoding.pm meta ticket setup
0.37#36248 review discussion, research
3.02debugging path search for no-fallback popenlist
0.62khw's op/pack.t failures
2.50look at khw's pack.t issues
0.28more IPC-Cmd debugging
0.38open ticket on icc 15 build issues
2.12remove shell fallback from multi-arg win32 popen,
debugging
0.88review bulk88's ppport email, check for a dep issue in
Makefile.SH, reply
0.18review OP_SIGNATURE discussion
0.62review signature branch
0.78try to reproduce Win32 IPC-Cmd failures

76.13 hours total

Leave a comment

About TPF

The Perl Foundation - supporting the Perl community since 2000. Find out more at www.perlfoundation.org.

About this Entry

This page contains a single entry by Karen Pauley published on March 15, 2015 4:19 AM.

Taking Part in Outreachy was the previous entry in this blog.

Extended: Calling for grant proposals is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Pages

OpenID accepted here Learn more about OpenID
Powered by Movable Type 6.2.2