gofix -r mapdelete R=golang-dev, r, adg, r, cw CC=golang-dev https://golang.org/cl/5266045
diff --git a/src/cmd/cgo/gcc.go b/src/cmd/cgo/gcc.go index 90f4032..1864eed 100644 --- a/src/cmd/cgo/gcc.go +++ b/src/cmd/cgo/gcc.go
@@ -588,7 +588,7 @@ n.Const = strconv.Itoa64(n.Type.EnumValues[k]) // Remove injected enum to ensure the value will deep-compare // equally in future loads of the same constant. - n.Type.EnumValues[k] = 0, false + delete(n.Type.EnumValues, k) } else if n.Kind == "const" && i < len(enumVal) { n.Const = strconv.Itoa64(enumVal[i]) }
diff --git a/src/cmd/gofmt/rewrite.go b/src/cmd/gofmt/rewrite.go index 8f65ef1..7f2bf06 100644 --- a/src/cmd/gofmt/rewrite.go +++ b/src/cmd/gofmt/rewrite.go
@@ -65,7 +65,7 @@ return reflect.Value{} } for k := range m { - m[k] = reflect.Value{}, false + delete(m, k) } val = apply(f, val) if match(m, pat, val) {
diff --git a/src/pkg/debug/dwarf/type.go b/src/pkg/debug/dwarf/type.go index f35365e..9fa221b 100644 --- a/src/pkg/debug/dwarf/type.go +++ b/src/pkg/debug/dwarf/type.go
@@ -579,6 +579,6 @@ // If the parse fails, take the type out of the cache // so that the next call with this offset doesn't hit // the cache and return success. - d.typeCache[off] = nil, false + delete(d.typeCache, off) return nil, err }
diff --git a/src/pkg/exp/types/check_test.go b/src/pkg/exp/types/check_test.go index 8be653f..034acd0 100644 --- a/src/pkg/exp/types/check_test.go +++ b/src/pkg/exp/types/check_test.go
@@ -154,7 +154,7 @@ continue } // we have a match - eliminate this error - expected[pos] = "", false + delete(expected, pos) } else { // To keep in mind when analyzing failed test output: // If the same error position occurs multiple times in errors,
diff --git a/src/pkg/exp/types/universe.go b/src/pkg/exp/types/universe.go index 6ae88e5..80db127 100644 --- a/src/pkg/exp/types/universe.go +++ b/src/pkg/exp/types/universe.go
@@ -81,6 +81,7 @@ defFun("close") defFun("complex") defFun("copy") + defFun("delete") defFun("imag") defFun("len") defFun("make")
diff --git a/src/pkg/gob/decode.go b/src/pkg/gob/decode.go index 9d8d905..f480087 100644 --- a/src/pkg/gob/decode.go +++ b/src/pkg/gob/decode.go
@@ -1154,7 +1154,7 @@ decoderMap[remoteId] = enginePtr *enginePtr, err = dec.compileDec(remoteId, ut) if err != nil { - decoderMap[remoteId] = nil, false + delete(decoderMap, remoteId) } } return @@ -1179,7 +1179,7 @@ *enginePtr, err = dec.compileIgnoreSingle(wireId) } if err != nil { - dec.ignorerCache[wireId] = nil, false + delete(dec.ignorerCache, wireId) } } return
diff --git a/src/pkg/gob/type.go b/src/pkg/gob/type.go index b2f716c..870101e 100644 --- a/src/pkg/gob/type.go +++ b/src/pkg/gob/type.go
@@ -405,7 +405,7 @@ var type0, type1 gobType defer func() { if err != nil { - types[rt] = nil, false + delete(types, rt) } }() // Install the top-level type before the subtypes (e.g. struct before
diff --git a/src/pkg/http/fcgi/child.go b/src/pkg/http/fcgi/child.go index 1971882..61dd3fb 100644 --- a/src/pkg/http/fcgi/child.go +++ b/src/pkg/http/fcgi/child.go
@@ -194,7 +194,7 @@ case typeData: // If the filter role is implemented, read the data stream here. case typeAbortRequest: - requests[rec.h.Id] = nil, false + delete(requests, rec.h.Id) c.conn.writeEndRequest(rec.h.Id, 0, statusRequestComplete) if !req.keepConn { // connection will close upon return
diff --git a/src/pkg/http/persist.go b/src/pkg/http/persist.go index 78bf905..f73e6c6 100644 --- a/src/pkg/http/persist.go +++ b/src/pkg/http/persist.go
@@ -165,7 +165,7 @@ // Retrieve the pipeline ID of this request/response pair sc.lk.Lock() id, ok := sc.pipereq[req] - sc.pipereq[req] = 0, false + delete(sc.pipereq, req) if !ok { sc.lk.Unlock() return ErrPipeline @@ -353,7 +353,7 @@ // Retrieve the pipeline ID of this request/response pair cc.lk.Lock() id, ok := cc.pipereq[req] - cc.pipereq[req] = 0, false + delete(cc.pipereq, req) if !ok { cc.lk.Unlock() return nil, ErrPipeline
diff --git a/src/pkg/http/transfer.go b/src/pkg/http/transfer.go index 300c7a8..868a114 100644 --- a/src/pkg/http/transfer.go +++ b/src/pkg/http/transfer.go
@@ -366,7 +366,7 @@ return nil, nil } - header["Transfer-Encoding"] = nil, false + delete(header, "Transfer-Encoding") // Head responses have no bodies, so the transfer encoding // should be ignored. @@ -399,7 +399,7 @@ // Chunked encoding trumps Content-Length. See RFC 2616 // Section 4.4. Currently len(te) > 0 implies chunked // encoding. - header["Content-Length"] = nil, false + delete(header, "Content-Length") return te, nil }
diff --git a/src/pkg/http/transport.go b/src/pkg/http/transport.go index b0aea97..0914af7 100644 --- a/src/pkg/http/transport.go +++ b/src/pkg/http/transport.go
@@ -266,7 +266,7 @@ } if len(pconns) == 1 { pconn = pconns[0] - t.idleConn[key] = nil, false + delete(t.idleConn, key) } else { // 2 or more cached connections; pop last // TODO: queue?
diff --git a/src/pkg/net/fd.go b/src/pkg/net/fd.go index e46e120..80d40af 100644 --- a/src/pkg/net/fd.go +++ b/src/pkg/net/fd.go
@@ -152,7 +152,7 @@ if !ok { return nil } - s.pending[key] = nil, false + delete(s.pending, key) return netfd } @@ -195,7 +195,7 @@ } if t > 0 { if t <= now { - s.pending[key] = nil, false + delete(s.pending, key) if mode == 'r' { s.poll.DelFD(fd.sysfd, mode) fd.rdeadline = -1
diff --git a/src/pkg/net/fd_linux.go b/src/pkg/net/fd_linux.go index 70fc344..c860c84 100644 --- a/src/pkg/net/fd_linux.go +++ b/src/pkg/net/fd_linux.go
@@ -105,7 +105,7 @@ if e := syscall.EpollCtl(p.epfd, syscall.EPOLL_CTL_DEL, fd, nil); e != 0 { print("Epoll delete fd=", fd, ": ", os.Errno(e).String(), "\n") } - p.events[fd] = 0, false + delete(p.events, fd) } }
diff --git a/src/pkg/net/textproto/header.go b/src/pkg/net/textproto/header.go index 288deb2..7fb32f8 100644 --- a/src/pkg/net/textproto/header.go +++ b/src/pkg/net/textproto/header.go
@@ -39,5 +39,5 @@ // Del deletes the values associated with key. func (h MIMEHeader) Del(key string) { - h[CanonicalMIMEHeaderKey(key)] = nil, false + delete(h, CanonicalMIMEHeaderKey(key)) }
diff --git a/src/pkg/net/textproto/pipeline.go b/src/pkg/net/textproto/pipeline.go index 8c25884..ca50edd 100644 --- a/src/pkg/net/textproto/pipeline.go +++ b/src/pkg/net/textproto/pipeline.go
@@ -108,7 +108,7 @@ } c, ok := s.wait[id] if ok { - s.wait[id] = nil, false + delete(s.wait, id) } s.mu.Unlock() if ok {
diff --git a/src/pkg/old/netchan/export.go b/src/pkg/old/netchan/export.go index 7df7365..99d5d7e 100644 --- a/src/pkg/old/netchan/export.go +++ b/src/pkg/old/netchan/export.go
@@ -314,7 +314,7 @@ // delClient forgets the client existed func (exp *Exporter) delClient(client *expClient) { exp.mu.Lock() - exp.clients[client] = false, false + delete(exp.clients, client) exp.mu.Unlock() } @@ -388,7 +388,7 @@ exp.mu.Lock() chDir, ok := exp.names[name] if ok { - exp.names[name] = nil, false + delete(exp.names, name) } // TODO drop all instances of channel from client sets exp.mu.Unlock()
diff --git a/src/pkg/old/netchan/import.go b/src/pkg/old/netchan/import.go index ec17d97..5a459e0 100644 --- a/src/pkg/old/netchan/import.go +++ b/src/pkg/old/netchan/import.go
@@ -256,8 +256,8 @@ if nc == nil { return os.NewError("netchan import: hangup: no such channel: " + name) } - imp.names[name] = nil, false - imp.chans[nc.id] = nil, false + delete(imp.names, name) + delete(imp.chans, nc.id) nc.close() return nil }
diff --git a/src/pkg/os/inotify/inotify_linux.go b/src/pkg/os/inotify/inotify_linux.go index 99fa516..ee3c75f 100644 --- a/src/pkg/os/inotify/inotify_linux.go +++ b/src/pkg/os/inotify/inotify_linux.go
@@ -131,7 +131,7 @@ if success == -1 { return os.NewSyscallError("inotify_rm_watch", errno) } - w.watches[path] = nil, false + delete(w.watches, path) return nil }
diff --git a/src/pkg/reflect/type.go b/src/pkg/reflect/type.go index 3630069..be5477d 100644 --- a/src/pkg/reflect/type.go +++ b/src/pkg/reflect/type.go
@@ -876,7 +876,7 @@ fd = inf } - mark[t] = false, false + delete(mark, t) return }
diff --git a/src/pkg/rpc/client.go b/src/pkg/rpc/client.go index 4acfdf6..c77901c 100644 --- a/src/pkg/rpc/client.go +++ b/src/pkg/rpc/client.go
@@ -104,7 +104,7 @@ seq := response.Seq client.mutex.Lock() c := client.pending[seq] - client.pending[seq] = c, false + delete(client.pending, seq) client.mutex.Unlock() if response.Error == "" {
diff --git a/src/pkg/rpc/jsonrpc/client.go b/src/pkg/rpc/jsonrpc/client.go index 577d0ce..17e9b93 100644 --- a/src/pkg/rpc/jsonrpc/client.go +++ b/src/pkg/rpc/jsonrpc/client.go
@@ -79,7 +79,7 @@ c.mutex.Lock() r.ServiceMethod = c.pending[c.resp.Id] - c.pending[c.resp.Id] = "", false + delete(c.pending, c.resp.Id) c.mutex.Unlock() r.Error = ""
diff --git a/src/pkg/rpc/jsonrpc/server.go b/src/pkg/rpc/jsonrpc/server.go index 9801fdf..61b5abf 100644 --- a/src/pkg/rpc/jsonrpc/server.go +++ b/src/pkg/rpc/jsonrpc/server.go
@@ -107,7 +107,7 @@ c.mutex.Unlock() return os.NewError("invalid sequence number in response") } - c.pending[r.Seq] = nil, false + delete(c.pending, r.Seq) c.mutex.Unlock() if b == nil {
diff --git a/src/pkg/syscall/syscall_unix.go b/src/pkg/syscall/syscall_unix.go index 1590b6d..70ea3bd 100644 --- a/src/pkg/syscall/syscall_unix.go +++ b/src/pkg/syscall/syscall_unix.go
@@ -87,6 +87,6 @@ if errno := m.munmap(uintptr(unsafe.Pointer(&b[0])), uintptr(len(b))); errno != 0 { return errno } - m.active[p] = nil, false + delete(m.active, p) return 0 }
diff --git a/src/pkg/unicode/maketables.go b/src/pkg/unicode/maketables.go index 087422d..15579aa 100644 --- a/src/pkg/unicode/maketables.go +++ b/src/pkg/unicode/maketables.go
@@ -1152,7 +1152,7 @@ // Remove class itself. for _, r := range class { - m[r] = false, false + delete(m, r) } // What's left is the exceptions.
diff --git a/src/pkg/unicode/script_test.go b/src/pkg/unicode/script_test.go index b37ad18..dfd636d 100644 --- a/src/pkg/unicode/script_test.go +++ b/src/pkg/unicode/script_test.go
@@ -206,7 +206,7 @@ if !Is(Scripts[test.script], test.rune) { t.Errorf("IsScript(%U, %s) = false, want true", test.rune, test.script) } - notTested[test.script] = false, false + delete(notTested, test.script) } for _, test := range outTest { if Is(Scripts[test.script], test.rune) { @@ -230,7 +230,7 @@ if !Is(Categories[test.script], test.rune) { t.Errorf("IsCategory(%U, %s) = false, want true", test.rune, test.script) } - notTested[test.script] = false, false + delete(notTested, test.script) } for k := range notTested { t.Error("category not tested:", k) @@ -249,7 +249,7 @@ if !Is(Properties[test.script], test.rune) { t.Errorf("IsCategory(%U, %s) = false, want true", test.rune, test.script) } - notTested[test.script] = false, false + delete(notTested, test.script) } for k := range notTested { t.Error("property not tested:", k)
diff --git a/src/pkg/url/url.go b/src/pkg/url/url.go index 9d19348..dd1f93d 100644 --- a/src/pkg/url/url.go +++ b/src/pkg/url/url.go
@@ -517,7 +517,7 @@ // Del deletes the values associated with key. func (v Values) Del(key string) { - v[key] = nil, false + delete(v, key) } // ParseQuery parses the URL-encoded query string and returns
diff --git a/src/pkg/xml/xml.go b/src/pkg/xml/xml.go index e7ba44e..85c24bc 100644 --- a/src/pkg/xml/xml.go +++ b/src/pkg/xml/xml.go
@@ -390,7 +390,11 @@ // translations that were associated with the element we just closed. for p.stk != nil && p.stk.kind != stkStart { s := p.pop() - p.ns[s.name.Local] = s.name.Space, s.ok + if s.ok { + p.ns[s.name.Local] = s.name.Space + } else { + delete(p.ns, s.name.Local) + } } return true
diff --git a/test/nil.go b/test/nil.go index 30cc270..efcf4f7 100644 --- a/test/nil.go +++ b/test/nil.go
@@ -150,7 +150,7 @@ m[2] = 3 }) shouldPanic(func() { - m[2] = 0, false + delete(m, 2) }) }