Supposing you want to use a constant, for all the usual reasons, to configure the name of an environment variable you need to check. So, you say
use const DANGERENV => 'RUN_DANGEROUS_TESTS';
Then, you use it to check existence and pull up the value of the variable
my $dangerEnvVar = $ENV{DANGERENV};
Anybody see this coming without previous experience being bitten on the ass by it?
So far as I can tell, the all-caps bareword in {} gets treated as a literal, rather than expanded as a constant; so it looks for environment variable DANGERENV, not RUN_DANGEROUS_TESTS. And fails to find it, of course. Oops! Perl is sometimes just slightly too smart for its own good.