in reply to Re: Re: Grabbing slices
in thread Grabbing slices

It is a bug in the XS version of Data::Dumper before v2.11. To see your version id:

perl -MData::Dumper -wle 'print $Data::Dumper::VERSION'
2.102 is in the base code for Perl 5.6.1, and has the bug.
2.12 is in the base code for Perl 5.8.0, and does not have the bug.

My testing script:

perl -MData::Dumper -wle '$Data::Dumper::Indent=0;print Dumper [ map { + ($_, $_+0) } 0..3 ]'
Good output:
$VAR1 = [0,0,1,1,2,2,3,3];
Buggy output:
$VAR1 = [0,'0',1,'1',2,'2',3,'3'];

If you set Useqq, as a side-effect, it will force Data::Dumper to use the pure-Perl forms of its code.
This is slower, but will work around the bug in older versions.

$Data::Dumper::Useqq = 1;