| package directive |
| |
| // Functions. |
| |
| func f() { |
| One() |
| |
| new(T).Two() |
| } |
| |
| type T struct{} |
| |
| //go:fix inline |
| func One() int { return one } // want One:`goFixInline directive.One` |
| |
| const one = 1 |
| |
| //go:fix inline |
| func (T) Two() int { return 2 } // want Two:`goFixInline \(directive.T\).Two` |
| |
| // Constants. |
| |
| const Uno = 1 |
| |
| //go:fix inline |
| const In1 = Uno // want In1: `goFixInline const "directive".Uno` |
| |
| const ( |
| no1 = one |
| |
| //go:fix inline |
| In2 = one // want In2: `goFixInline const "directive".one` |
| ) |
| |
| //go:fix inline |
| const bad1 = 1 // want `invalid //go:fix inline directive: const value is not the name of another constant` |
| |
| //go:fix inline |
| const in5, |
| in6, |
| bad2 = one, one, |
| one + 1 // want `invalid //go:fix inline directive: const value is not the name of another constant` |
| |
| // Make sure we don't crash on iota consts, but still process the whole decl. |
| // |
| //go:fix inline |
| const ( |
| a = iota // want `invalid //go:fix inline directive: const value is iota` |
| b |
| in7 = one |
| ) |
| |
| const ( |
| x = 1 |
| //go:fix inline |
| in8 = x |
| ) |
| |
| //go:fix inline |
| const in9 = iota // want `invalid //go:fix inline directive: const value is iota` |
| |
| //go:fix inline |
| type E = map[[Uno]string][]*T // want `invalid //go:fix inline directive: array types not supported` |