# With strictures: use strict; use warnings; use Data::Dump 'pp'; my %hash; $hash{tree} = 4; $hash{tree}->{apple} = 6; pp \%hash; __END__ Can't use string ("4") as a HASH ref while "strict refs" in use at G:\x.pl line 7. #### # Without strictures: use warnings; use Data::Dump 'pp'; my %hash; $hash{tree} = 4; $hash{tree}->{apple} = 6; pp \%hash; __END__ { tree => 4 }