$ perl -c -e 'use 5.10.0; given(1) { defalut { print "boo" } }' < no error> Probably not much can be done about really fixing this, but a carefully crafted warning might be possible.