my $name = 'main::test' ; if (defined *{$name}{SCALAR}) { print "\$$name\n" ;} if (defined *{$name}{ARRAY}) { print "\@$name\n" ;} if (defined *{$name}{HASH}) { print "\%$name\n" ;} #### $main::test #### @test = %test = 1 ; #### $main::test @main::test %main::test #### my $name = 'main::test' ; my $ref = *{$name}{SCALAR} ; print "$ref\n" ; #### SCALAR(0x1a6f080) #### if (defined $val && defined *ENTRY{SCALAR}) {