in reply to Why nothing from 'strict' or 'warnings' with deref'd undef value?

It is called autovivication and its a feature not a bug. It is sort of a precondition for using perl multidimensional arrays and hashes comfortably. For example you don't need to initalize $a[12] to do $a[12][50]= 4;

If you don't want it you have to explicitly test for undef. Hint: perl5.10 has a new feature to do this with less typing: '//'