diff options
| author | Jeremy Quirke <qjeremy@uber.com> | 2022-12-26 04:07:03 +0000 |
|---|---|---|
| committer | Cherry Mui <cherryyz@google.com> | 2023-01-24 17:00:10 +0000 |
| commit | dc9d219cad115cf04d07a0cd10a46d127cf6e5e1 (patch) | |
| tree | 06e8dfef4487ed278eeb1ee768b4e32cbc967d22 /src/cmd/link | |
| parent | 733ba921875ea11088f1f447cbca418f651aae5c (diff) | |
| download | go-dc9d219cad115cf04d07a0cd10a46d127cf6e5e1.tar.xz | |
cmd/link: remove importcycles function
The importcycles method has not been useful since April 2016 when a large code deletion was performed.
The compiler itself provides some protection against import cycles, and the linker does import cycle detection in linksetup -> postorder.
For #57400
Change-Id: I3095bdb3f16a82ba25681bf4a20ceaa3c9613921
GitHub-Last-Rev: 87a46153b136db67675874ffe46e5881b9c756ce
GitHub-Pull-Request: golang/go#57462
Reviewed-on: https://go-review.googlesource.com/c/go/+/459475
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Than McIntosh <thanm@google.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Run-TryBot: Cherry Mui <cherryyz@google.com>
Diffstat (limited to 'src/cmd/link')
| -rw-r--r-- | src/cmd/link/internal/ld/go.go | 45 | ||||
| -rw-r--r-- | src/cmd/link/internal/ld/lib.go | 2 |
2 files changed, 0 insertions, 47 deletions
diff --git a/src/cmd/link/internal/ld/go.go b/src/cmd/link/internal/ld/go.go index 9dfb0f756e..ef73924914 100644 --- a/src/cmd/link/internal/ld/go.go +++ b/src/cmd/link/internal/ld/go.go @@ -452,48 +452,3 @@ func (ctxt *Link) addexport() { adddynlib(ctxt, lib) } } - -type Pkg struct { - mark bool - checked bool - path string - impby []*Pkg -} - -var pkgall []*Pkg - -func (p *Pkg) cycle() *Pkg { - if p.checked { - return nil - } - - if p.mark { - nerrors++ - fmt.Printf("import cycle:\n") - fmt.Printf("\t%s\n", p.path) - return p - } - - p.mark = true - for _, q := range p.impby { - if bad := q.cycle(); bad != nil { - p.mark = false - p.checked = true - fmt.Printf("\timports %s\n", p.path) - if bad == p { - return nil - } - return bad - } - } - - p.checked = true - p.mark = false - return nil -} - -func importcycles() { - for _, p := range pkgall { - p.cycle() - } -} diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go index c0730179db..22c764ada5 100644 --- a/src/cmd/link/internal/ld/lib.go +++ b/src/cmd/link/internal/ld/lib.go @@ -646,8 +646,6 @@ func (ctxt *Link) loadlib() { // We've loaded all the code now. ctxt.Loaded = true - importcycles() - strictDupMsgCount = ctxt.loader.NStrictDupMsgs() } |
