It seems that someone already did offer a patch that would perpetuate the lvalueness of an LVALUE ref when it is modifed. Indeed, it was done in response to a perlbug diotalevi raised following an earlier exposition of mine on the subject here.
However, it would appear that patch was rejected in favour of the quick fix of (silently) converting a modified LVALUE to a mortal SV if a further attempt to modify it was encountered.
Examine what is said, not who speaks.
Silence betokens consent.
Love the truth but pardon error.
In reply to Re^3: Scalar refs, aliasing, and recursion weirdness.