e239fd2b88
Drop tracking: handle invalid assignments better Previously this test case was crashing with an index out of bounds error deep in the call to `needs_drop`. We avoid this by detecting clearly invalid assignees in the `mutate` callback and ignoring these.
For high-level intro to how type checking works in rustc, see the type checking chapter of the rustc dev guide.