I've encountered this error many times. I usually trigger it by forgetting the second half of a fat comma, i.e. using
= instead of
=>.
perl -e '%h = (a = 42)'
Can't modify constant item in scalar assignment at -e line 1, near "42
+)
"
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]