in reply to Re: lvalue XS subs
in thread lvalue XS subs

Perfect! Change
-$obj->lf_int=444; +sub lf_int :lvalue { $obj->lf_int } +lf_int=444;
and you get
Can't return a temporary from lvalue subroutine

That's the bug. It's a spurious exception (not a warning!) when the temp has set magic.

Obscure, yes, but I want to change the lvalue ops to return a temp which would cause the following to give the same error:

sub foo :lvalue { substr(...) }