On Mon, Sep 08, 2003 at 11:18:12AM +0200, Paul Johnson wrote: : By the way, I trust this will be addressed (if it hasn't been already): : : perl5 -le 'print "gah!" if exists $a{b}{c}; print "phooey!" if exists $a{b}' : : perlfunc says: : : This surprising autovivification in what does not at first--or even : second--glance appear to be an lvalue context may be fixed in a future : release.
I sure hope so. Perl 5 confuses reference contexts with lvalue contexts. With the new vtable implementation of basic types, we ought to be able to substitute an "always undefined" array or hash vtable that can propagate non-existence outward in rvalue context. Larry