Skip Menu |

This queue is for tickets about the version CPAN distribution.

Report information
The Basics
Id: 78328
Status: rejected
Priority: 0/
Queue: version

People
Owner: jpeacock [...] cpan.org
Requestors: REHSACK [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in:
  • 0.88
  • 0.97
  • 0.99
Fixed in: (no value)



Subject: SEGV when $version->parse( "version" )
Hi, due a failure in a script I figured out that version->parse("version") creates a SEGV. $ perl -le 'my $v = version->parse( "version" );' Segmentation fault $ gdb `which perl` GNU gdb (GDB) 7.1-ubuntu Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/pkg/bin/perl...done. (gdb) set args -le 'my $v = version->parse( "version" );' (gdb) c The program is not being run. (gdb) run Starting program: /usr/pkg/bin/perl -le 'my $v = version->parse( "version" );' [Thread debugging using libthread_db enabled] Program received signal SIGSEGV, Segmentation fault. 0x00007ffff7b0d765 in Perl_hv_common () from /usr/pkg/lib/perl5/5.14.0/x86_64-linux-thread-multi/CORE/libperl.so (gdb) where #0 0x00007ffff7b0d765 in Perl_hv_common () from /usr/pkg/lib/perl5/5.14.0/x86_64-linux-thread-multi/CORE/libperl.so #1 0x00007ffff7b0f38e in Perl_hv_common_key_len () from /usr/pkg/lib/perl5/5.14.0/x86_64-linux-thread-multi/CORE/libperl.so #2 0x00007ffff7afa796 in Perl_new_version () from /usr/pkg/lib/perl5/5.14.0/x86_64-linux-thread-multi/CORE/libperl.so #3 0x00007ffff7b8bba1 in XS_version_new () from /usr/pkg/lib/perl5/5.14.0/x86_64-linux-thread-multi/CORE/libperl.so #4 0x00007ffff7b13188 in Perl_pp_entersub () from /usr/pkg/lib/perl5/5.14.0/x86_64-linux-thread-multi/CORE/libperl.so #5 0x00007ffff7b11dc6 in Perl_runops_standard () from /usr/pkg/lib/perl5/5.14.0/x86_64-linux-thread-multi/CORE/libperl.so #6 0x00007ffff7aad743 in perl_run () from /usr/pkg/lib/perl5/5.14.0/x86_64-linux-thread-multi/CORE/libperl.so #7 0x0000000000401074 in main () $ perl -v This is perl 5, version 14, subversion 2 (v5.14.2) built for x86_64-linux-thread-multi
On Thu Jul 12 09:36:30 2012, REHSACK wrote: Show quoted text
> due a failure in a script I figured out that version->parse("version") > creates a SEGV. > > $ perl -le 'my $v = version->parse( "version" );'
Just because you installed a newer copy of version.pm from CPAN doesn't mean you don't also have to explicitly "use version" to gain the newer code. Perl 5.14.2 contains version.pm 0.88, which did have this problem. Installing 0.95 or later from CPAN, however, does not have this problem. And it does require an explicit 'use version' to replace the core code with the CPAN code. perl -Mversion -le 'my $v = version->parse( "version" );'