Lightknight has asked for the wisdom of the Perl Monks concerning the following question:
Produces this output:#!/usr/bin/perl -w use strict; use Clone; use Data::Dumper; printf "Clone: %s Data::Dumper %s\n", $Clone::VERSION, $Data::Dumper::VERSION; my $orig = { # This could be arbitrariliy complicated/nested # - this suffices for a demo # of the probem 'array' => [ 1,2,3 ] }; # Put it throught Data::Dumper with Userperl(1); my $d = Data::Dumper->new([$orig]); $d->Useperl(1); $d->Dump(); # Make a clone - it should be identical, I guess my $clone = Clone::clone($orig); # See that the clone has a different structure in array # (length of $$clone{array} is 0) printf "orig: %d clone %d\n", scalar(@{$$orig{array}}), scalar(@{$$clone{array}});
I would have expectedClone: 0.29 Data::Dumper 2.121_14 orig: 3 clone 0
Since the orig and the clone should have been identical. Right? Is there a bug here? Where?Clone: 0.29 Data::Dumper 2.121_14 orig: 3 clone 3
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Why does this combo of Data::Dumper and Clone::clone() fail? Bug?
by ikegami (Patriarch) on Dec 16, 2010 at 20:46 UTC | |
|
Re: Why does this combo of Data::Dumper and Clone::clone() fail? Bug?
by BrowserUk (Patriarch) on Dec 16, 2010 at 18:56 UTC |