From df7cb59de427dcfee9af0713ecf8b7033948303b Mon Sep 17 00:00:00 2001 From: Cuong Manh Le Date: Tue, 7 Jun 2022 00:07:26 +0700 Subject: [PATCH] [dev.unified] cmd/compile: only sort symbols by name and package path Since CL 393715, the path of package being compiled is now always known, so symbols can be sorted by package path instead of package height. Updates #51734 Change-Id: Ie543e2fdef4b93f3f0b97c6bcec0a4dcff788f2c Reviewed-on: https://go-review.googlesource.com/c/go/+/410654 TryBot-Result: Gopher Robot Reviewed-by: Matthew Dempsky Auto-Submit: Cuong Manh Le Run-TryBot: Cuong Manh Le Reviewed-by: Cherry Mui --- src/cmd/compile/internal/types/sym.go | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/src/cmd/compile/internal/types/sym.go b/src/cmd/compile/internal/types/sym.go index 927ebc453a..9d8707befa 100644 --- a/src/cmd/compile/internal/types/sym.go +++ b/src/cmd/compile/internal/types/sym.go @@ -97,14 +97,7 @@ func (sym *Sym) LinksymABI(abi obj.ABI) *obj.LSym { // Less reports whether symbol a is ordered before symbol b. // // Symbols are ordered exported before non-exported, then by name, and -// finally (for non-exported symbols) by package height and path. -// -// Ordering by package height is necessary to establish a consistent -// ordering for non-exported names with the same spelling but from -// different packages. We don't necessarily know the path for the -// package being compiled, but by definition it will have a height -// greater than any other packages seen within the compilation unit. -// For more background, see issue #24693. +// finally (for non-exported symbols) by package path. func (a *Sym) Less(b *Sym) bool { if a == b { return false @@ -131,9 +124,6 @@ func (a *Sym) Less(b *Sym) bool { return a.Name < b.Name } if !ea { - if a.Pkg.Height != b.Pkg.Height { - return a.Pkg.Height < b.Pkg.Height - } return a.Pkg.Path < b.Pkg.Path } return false -- 2.50.0