Skip Menu |

This queue is for tickets about the Devel-MAT CPAN distribution.

Report information
The Basics
Id: 90784
Status: resolved
Priority: 0/
Queue: Devel-MAT

People
Owner: Nobody in particular
Requestors: ANDK [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.09
Fixed in: 0.10



Subject: Fails on nvsize!=8
As per subject. Compiling with -Duselongdouble on a 64 bit system should trigger that. Sample fail report: http://www.cpantesters.org/cpan/report/36671276 I have tried to follow in the debugger. Here's the output with a perl 5.16.3: DB<0> c 28 main::(t/01self.t:28): ok( my $gv = $defstash->value( "PACKAGE_SCALAR" ), 'default stash has PACKAGE_SCALAR GV' ); not ok 1 - $df has default stash # Failed test '$df has default stash' # at t/01self.t line 24. DB<1> n main::(t/01self.t:28): ok( my $gv = $defstash->value( "PACKAGE_SCALAR" ), 'default stash has PACKAGE_SCALAR GV' ); DB<1> n Can't call method "value" on an undefined value at t/01self.t line 28. at t/01self.t line 28. # Tests were run but no plan was declared and done_testing() was not seen. # Looks like your test exited with 255 just after 1. Doing the same in the debugger with a perl 5.18.1 I see a SEGV. The stacktrace of the resulting core file tells me: (gdb) bt #0 0x00002afdda1d74c7 in kill () at ../sysdeps/unix/syscall-template.S:81 #1 0x00000000004e6f16 in Perl_apply (type=<optimized out>, mark=0xb5b760, mark@entry=0xb5b750, sp=0xb5b760) at doio.c:1771 #2 0x00000000004dc2e5 in Perl_pp_chown () at pp_sys.c:3527 #3 0x0000000000495f73 in Perl_runops_standard () at run.c:42 #4 0x0000000000433578 in Perl_call_sv (sv=sv@entry=0xf78900, flags=<optimized out>, flags@entry=12) at perl.c:2766 #5 0x00000000004877a4 in Perl_sighandler (sig=11, sip=0x0, uap=0x0) at mg.c:3143 #6 <signal handler called> #7 write_private_cv (cv=0x18ca640, fh=0x18ca640) at lib/Devel/MAT/Dumper.xs:282 #8 write_sv (fh=fh@entry=0x18ca640, sv=sv@entry=0xe21f98) at lib/Devel/MAT/Dumper.xs:360 #9 0x00002afddac56ccb in dumpfh (fh=fh@entry=0x18ca640) at lib/Devel/MAT/Dumper.xs:503 #10 0x00002afddac56d58 in dump (file=0x163b3a0 "test.pmat") at lib/Devel/MAT/Dumper.xs:519 #11 XS_Devel__MAT__Dumper_dump (cv=<optimized out>) at lib/Devel/MAT/Dumper.c:686 #12 0x000000000049d3bd in Perl_pp_entersub () at pp_hot.c:2881 #13 0x0000000000495f73 in Perl_runops_standard () at run.c:42 #14 0x0000000000439646 in S_run_body (oldscope=<optimized out>) at perl.c:2462 #15 perl_run (my_perl=<optimized out>) at perl.c:2383 #16 0x000000000041da85 in main (argc=4, argv=0x7fff2f073278, env=0x7fff2f0732a0) at perlmain.c:114 HTH, let me know if I can provide anything useful beyond this point. Thanks,
On Mon Nov 25 00:05:54 2013, ANDK wrote: Show quoted text
> As per subject. Compiling with -Duselongdouble on a 64 bit system > should trigger that.
... Show quoted text
> HTH, let me know if I can provide anything useful beyond this point.
Ah, interesting.. I wasn't aware anyone was looking at using this yet :) Anyhow, I was aware of that one and I've just this moment shipped a 0.10 which fixes it. The issue was a mis-alignment of the 'NV' size - Dumper thought it should write 16 bytes, Dumpfile thought it wanted to read just 10. If you're actually using this for something serious, be aware currently the dumpfile format is still very much in flux - fields getting added or changed around every version. Don't expect any files to load in later versions yet. Eventually this will stablise down, once I'm happy with the arrangement. -- Paul Evans
Released in 0.10. -- Paul Evans