| |
| This test attempts to rename a.S.X to x, which would make it |
| inaccessible from its external test package. The rename tool |
| should report an error rather than wrecking the program. |
| See issue #59403. |
| |
| -- go.mod -- |
| module example.com |
| go 1.12 |
| |
| -- a/a.go -- |
| package a |
| |
| var S struct{ X int } //@renameerr("X", "x", oops) |
| |
| -- a/a_test.go -- |
| package a_test |
| |
| import "example.com/a" |
| |
| var Y = a.S.X |
| |
| -- @oops -- |
| a/a.go:3:15: renaming "X" to "x" would make it unexported |
| a/a_test.go:5:13: breaking references from packages such as "example.com/a_test" |