sub x :lvalue { 1 };; [Can't modify constant item in lvalue subroutine return at (eval 18) line 1, near "1 }" #### my $ref = \x(); ## lvalue context, no assignment. ... some time later assign through the ref taken. $$ref = 'anything at all';