diff options
| author | Russ Cox <rsc@golang.org> | 2022-10-26 22:16:52 -0400 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2022-11-02 14:38:08 +0000 |
| commit | 0aeda5afe5972c1b5f76d5ee78cbc5c96474ca89 (patch) | |
| tree | 3ef6bef03f311e6d77aecf6d8d596fdb64679b87 /src/cmd/link | |
| parent | 30b240b102652a7cf6b7df0748b4bc69f496e0bc (diff) | |
| download | go-0aeda5afe5972c1b5f76d5ee78cbc5c96474ca89.tar.xz | |
cmd/link: remove unnecessary use of sync.Once alongside sync.Mutex
There does not seem to be any point to this sync.Once.
I noticed because I was surveying uses of sync.Once to
understand usage patterns. This seems to be a dreg left over
from some earlier instance of the code.
Change-Id: I99dd258d865a41d0e8f6cfa55887855e477fb9c2
Reviewed-on: https://go-review.googlesource.com/c/go/+/445755
Auto-Submit: Russ Cox <rsc@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Russ Cox <rsc@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Diffstat (limited to 'src/cmd/link')
| -rw-r--r-- | src/cmd/link/internal/ld/errors.go | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/cmd/link/internal/ld/errors.go b/src/cmd/link/internal/ld/errors.go index d6e8ff236d..b553d682d9 100644 --- a/src/cmd/link/internal/ld/errors.go +++ b/src/cmd/link/internal/ld/errors.go @@ -21,7 +21,6 @@ type symNameFn func(s loader.Sym) string // ErrorReporter is used to make error reporting thread safe. type ErrorReporter struct { loader.ErrorReporter - unresOnce sync.Once unresSyms map[unresolvedSymKey]bool unresMutex sync.Mutex SymName symNameFn @@ -29,11 +28,13 @@ type ErrorReporter struct { // errorUnresolved prints unresolved symbol error for rs that is referenced from s. func (reporter *ErrorReporter) errorUnresolved(ldr *loader.Loader, s, rs loader.Sym) { - reporter.unresOnce.Do(func() { reporter.unresSyms = make(map[unresolvedSymKey]bool) }) - - k := unresolvedSymKey{from: s, to: rs} reporter.unresMutex.Lock() defer reporter.unresMutex.Unlock() + + if reporter.unresSyms == nil { + reporter.unresSyms = make(map[unresolvedSymKey]bool) + } + k := unresolvedSymKey{from: s, to: rs} if !reporter.unresSyms[k] { reporter.unresSyms[k] = true name := ldr.SymName(rs) |
