perl -MData::Dump -e '@hash{(key1,key2)} = ({a=>1, b=>2}) x 2;dd \%hash;print "hash{key1}{a}=$hash{key1}{a}\nhash{key1}{b}=$hash{key1}{b}\nhash{key2}{a}=$hash{key2}{a}\nhash{key2}{b}=$hash{key2}{b}\n"' do { my $a = { key1 => { a => 1, b => 2 }, key2 => 'fix' }; $a->{key2} = $a->{key1}; $a; } hash{key1}{a}=1 hash{key1}{b}=2 hash{key2}{a}=1 hash{key2}{b}=2