Wrong.
use Data::Dumper;
%hash = (key => 1);
local $hash{key} = 2;
print Dumper(\%hash);# print 2
print $hash{key};# also print 2.
This clearly demos that $hash{key} is not another scalar, it simply refers to a hash element, which is a scalar. Again, please try to understand the subtle difference between "valid syntax to name an element of a collective, which happened to be a scalar", and "valid syntax for scalar name".
They will support it in Perl 5.10? Hope this will never happen ;-)
Let's look at from a different perspective. In c, you can say,
int a[200];
You can also say,
a[100] = 2;
but is
a[100] a valid variable name? no, it is NOT. It can be used to call an array element, but it is not a valid variable name. It is the same situation here.