In <CAMOxC8vCaYk3GD0NRH=jxGmNKu+bmKTrYKR2nsrgU6Wei+xmYQ@mail.gmail.com>
Ruslan Zakirov wrote:
> I've finished my work on pp_aassign. I find it ready for review.
> Each commit has plenty of details, but here is short description:
>
> * scalar(%h = (1,1,1,1)) returns 4, not 2
> * warn on ($s,%h) = (1,{}) as on (%h) = ({})
> * (%h = (1)) in list context returns (1, $h{1})
> instead of (1)
> * return of (%h = (1,1,1)) in list context was incorrect
> * in list context returned keys was aliased to RHS scalars
> of aassign
> * returned list from ((%h, @a) = ...), hash on LHS followed by
> array or hash, was incorrect
> * implemented right to left algorithm for not magic hash assignment
> in scalar and void context
> * use less mortals is list context
> * in list context hash assignment return keys aliased to RHS
> when it's ok (it's not LVALUE context)