in reply to syntax error with constant

The problem is not with use constant:

sub k{} print 1-k; print 1 -k(); print 1 -k();
gives the same error. This happens from at least 5.6.0 until 5.8.1-RC4.

What I think happens is that the parser gets confused with trying to handle the:

-key => value
notation.

Liz

Update: -k  File has sticky bit set. is of course a much better explanation. Thanks to BrowserUk!