From bb5339196f86057ffa6042d31f52a44bf7f13752 Mon Sep 17 00:00:00 2001 From: Tobias Klauser Date: Wed, 2 Oct 2024 13:00:17 +0200 Subject: all: use slices.Sorted(maps.Keys(m)) Use slices.Sorted(maps.Keys(m)) to get a sorted slices of the keys in a map. Do not change packages built during bootstrap, as the bootstrap compiler (currently 1.22.6) does not have the required maps and slices functions. Change-Id: Ie35565d241fa14aca56b730a69af010127b659ab Reviewed-on: https://go-review.googlesource.com/c/go/+/617356 Reviewed-by: Ian Lance Taylor LUCI-TryBot-Result: Go LUCI Reviewed-by: Michael Knyszek Auto-Submit: Tobias Klauser --- src/internal/coverage/cformat/format.go | 16 +++------------- src/internal/coverage/encodecounter/encode.go | 7 ++----- 2 files changed, 5 insertions(+), 18 deletions(-) (limited to 'src/internal/coverage') diff --git a/src/internal/coverage/cformat/format.go b/src/internal/coverage/cformat/format.go index 0f9e981df8..4df0e70b81 100644 --- a/src/internal/coverage/cformat/format.go +++ b/src/internal/coverage/cformat/format.go @@ -36,6 +36,7 @@ import ( "internal/coverage" "internal/coverage/cmerge" "io" + "maps" "slices" "strings" "text/tabwriter" @@ -174,12 +175,7 @@ func (fm *Formatter) EmitTextual(w io.Writer) error { if _, err := fmt.Fprintf(w, "mode: %s\n", fm.cm.String()); err != nil { return err } - pkgs := make([]string, 0, len(fm.pm)) - for importpath := range fm.pm { - pkgs = append(pkgs, importpath) - } - slices.Sort(pkgs) - for _, importpath := range pkgs { + for _, importpath := range slices.Sorted(maps.Keys(fm.pm)) { p := fm.pm[importpath] units := make([]extcu, 0, len(p.unitTable)) for u := range p.unitTable { @@ -281,14 +277,8 @@ func (fm *Formatter) EmitFuncs(w io.Writer) error { allStmts := uint64(0) covStmts := uint64(0) - pkgs := make([]string, 0, len(fm.pm)) - for importpath := range fm.pm { - pkgs = append(pkgs, importpath) - } - slices.Sort(pkgs) - // Emit functions for each package, sorted by import path. - for _, importpath := range pkgs { + for _, importpath := range slices.Sorted(maps.Keys(fm.pm)) { p := fm.pm[importpath] if len(p.unitTable) == 0 { continue diff --git a/src/internal/coverage/encodecounter/encode.go b/src/internal/coverage/encodecounter/encode.go index d50827014b..82fd328faf 100644 --- a/src/internal/coverage/encodecounter/encode.go +++ b/src/internal/coverage/encodecounter/encode.go @@ -13,6 +13,7 @@ import ( "internal/coverage/stringtab" "internal/coverage/uleb128" "io" + "maps" "os" "slices" ) @@ -122,11 +123,7 @@ func (cfw *CoverageDataWriter) writeSegmentPreamble(args map[string]string, ws * } cfw.csh.StrTabLen = uint32(len(ws.BytesWritten())) - hdrsz - akeys := make([]string, 0, len(args)) - for k := range args { - akeys = append(akeys, k) - } - slices.Sort(akeys) + akeys := slices.Sorted(maps.Keys(args)) wrULEB128 := func(v uint) error { cfw.tmp = cfw.tmp[:0] -- cgit v1.3-6-g1900