6 x = x // want `self-assignment`
7 y = y // want `self-assignment`
8 y, x, z = y, x, 1 // want `self-assignment of y to y` `self-assignment of x to x`
24 x[42] = x[42] // want `self-assignment`
25 x[pure(42)] = x[pure(42)] // want `self-assignment`
26 x[pure(pure(42))] = x[pure(pure(42))] // want `self-assignment`
27 x[impure(42)] = x[impure(42)]
28 x[impure(pure(42))] = x[impure(pure(42))]
29 x[pure(impure(42))] = x[pure(impure(42))]
30 x[pure(<-ch)] = x[pure(<-ch)]
31 x[pure(pure(<-ch))] = x[pure(pure(<-ch))]
38 ts[impure(42)].x = ts[impure(42)].x
42 m[new(int)] = m[new(int)]
45 m2[len(x)] = m2[len(x)] // want `self-assignment`
48 gen2(0)[0] = gen2(0)[0] // want `self-assignment`
49 gen3(0)[0] = gen3(0)[0]
65 func gen2(x int) []int {
69 func gen3(x int) []int {
73 func pure(n int) int {
77 func impure(n int) int {