Interestingly, it's a difference in Perl parser, not in
constant. As usually, help the parser by telling it the
{ doesn't start a block, but a hash reference:
use constant +{ qw( true 1 false 0 ) };
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]