mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
Avoids problems with local declarations shadowing other names.
We write a more explicit form than the incoming program, so there
may be additional type annotations. For example:
int := "hello"
j := 2
would normally turn into
var int string = "hello"
var j int = 2
but the int variable shadows the int type in the second line.
This CL marks all local variables with a per-function sequence number,
so that this would instead be:
var int·1 string = "hello"
var j·2 int = 2
Fixes #4326.
R=ken2
CC=golang-dev
https://golang.org/cl/6816100
12 lines
214 B
Go
12 lines
214 B
Go
package p1
|
|
|
|
type O map[string]map[string]string
|
|
|
|
func (opts O) RemoveOption(sect, opt string) bool {
|
|
if _, ok := opts[sect]; !ok {
|
|
return false
|
|
}
|
|
_, ok := opts[sect][opt]
|
|
delete(opts[sect], opt)
|
|
return ok
|
|
}
|