Mrproper/typedep reorder

It is use in case of assignment so it may be use on `a[i] = 1 ` to return a but also on `a = 1` to return a too. The subscripted name make me think it will only work on the first case. (but variable is not really accurate)