in reply to strict subs and bareword exceptions
It isn't. It is being interpreted as a comma that quotes the string on its left hand side. B::Deparse shows what going on:
In the second example strict doesn't care about the bareword nono (see below). Nevertheless, this would generate a warning with -w.perl -MO=Deparse -e 'print nono => "1";' print 'nono', '1';
In the last example the bareword looks like a filehandle. And since a filehandle shouldn't have a comma after it in a print statement the compiler, not strict, rejects it.
--
John.
|
|---|