From 0cf996a9c12d9bc5b38787c2f3b0212c39d87dd5 Mon Sep 17 00:00:00 2001 From: Cuong Manh Le Date: Thu, 1 Sep 2022 00:16:32 +0700 Subject: [PATCH] cmd/compile/internal/abt: use strings.Builder Since go1.17 is now used for bootstrapping. Change-Id: I5692ff4b38b7d9a279b20662ce5348ff34a2dde6 Reviewed-on: https://go-review.googlesource.com/c/go/+/427134 TryBot-Result: Gopher Robot Reviewed-by: Keith Randall Reviewed-by: Keith Randall Reviewed-by: Bryan Mills Reviewed-by: hopehook Run-TryBot: Cuong Manh Le Reviewed-by: David Chase --- src/cmd/compile/internal/abt/avlint32.go | 31 ++++++------------------ 1 file changed, 7 insertions(+), 24 deletions(-) diff --git a/src/cmd/compile/internal/abt/avlint32.go b/src/cmd/compile/internal/abt/avlint32.go index 00bbccf45a..eed5fa5d38 100644 --- a/src/cmd/compile/internal/abt/avlint32.go +++ b/src/cmd/compile/internal/abt/avlint32.go @@ -7,6 +7,7 @@ package abt import ( "fmt" "strconv" + "strings" ) const ( @@ -326,39 +327,21 @@ func (t *T) Equals(u *T) bool { return t.root.equals(u.root) } -// This doesn't build with go1.4, sigh -// func (t *T) String() string { -// var b strings.Builder -// first := true -// for it := t.Iterator(); !it.IsEmpty(); { -// k, v := it.Next() -// if first { -// first = false -// } else { -// b.WriteString("; ") -// } -// b.WriteString(strconv.FormatInt(int64(k), 10)) -// b.WriteString(":") -// b.WriteString(v.String()) -// } -// return b.String() -// } - func (t *T) String() string { - var b string + var b strings.Builder first := true for it := t.Iterator(); !it.Done(); { k, v := it.Next() if first { first = false } else { - b += ("; ") + b.WriteString("; ") } - b += (strconv.FormatInt(int64(k), 10)) - b += (":") - b += fmt.Sprint(v) + b.WriteString(strconv.FormatInt(int64(k), 10)) + b.WriteString(":") + b.WriteString(fmt.Sprint(v)) } - return b + return b.String() } func (t *node32) equals(u *node32) bool {