From: LE Manh Cuong Date: Fri, 31 May 2019 17:36:02 +0000 (+0700) Subject: cmd/compile: fix wrong field type in scasetype X-Git-Tag: go1.14beta1~1295 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=400d02123303115cc46a2ccc949bdcc2bfcc30e4;p=gostls13.git cmd/compile: fix wrong field type in scasetype The only place set releasetime to negative is in runtime.selectgo (when blockprofilerate greater than zero), so we are safe in compiler code. But scasetype must keep in sync with runtime/select.go scase struct, so releasetime must be int64. Change-Id: I39ea944f5f2872452d3ffd57f7604d51e0d2590a Reviewed-on: https://go-review.googlesource.com/c/go/+/179799 Run-TryBot: Cuong Manh Le TryBot-Result: Gobot Gobot Reviewed-by: Matthew Dempsky --- diff --git a/src/cmd/compile/internal/gc/select.go b/src/cmd/compile/internal/gc/select.go index a09d779af6..e0ed1e2a9f 100644 --- a/src/cmd/compile/internal/gc/select.go +++ b/src/cmd/compile/internal/gc/select.go @@ -388,7 +388,7 @@ func scasetype() *types.Type { namedfield("elem", types.Types[TUNSAFEPTR]), namedfield("kind", types.Types[TUINT16]), namedfield("pc", types.Types[TUINTPTR]), - namedfield("releasetime", types.Types[TUINT64]), + namedfield("releasetime", types.Types[TINT64]), }) scase.SetNoalg(true) } diff --git a/src/runtime/select.go b/src/runtime/select.go index 85be1bc64d..86182890cc 100644 --- a/src/runtime/select.go +++ b/src/runtime/select.go @@ -14,7 +14,7 @@ const debugSelect = false // scase.kind values. // Known to compiler. -// Changes here must also be made in src/cmd/compile/internal/gc/select.go's walkselect. +// Changes here must also be made in src/cmd/compile/internal/gc/select.go's walkselectcases. const ( caseNil = iota caseRecv