mirror of
https://github.com/golang/go.git
synced 2025-05-05 15:43:04 +00:00
cmd/compile: allow ir.OMIN/ir.OMAX in mayCall
CL 496257 adds min/max builtins, which may appear as argument to a function call, so it will be tested by mayCall. But those ops are not handled by mayCall, causes the compiler crashes. Fixes #60582 Change-Id: I729f10bf62b4aad39ffcb1433f576e74d09fdd9a Reviewed-on: https://go-review.googlesource.com/c/go/+/500575 Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Auto-Submit: Cuong Manh Le <cuong.manhle.vn@gmail.com> Reviewed-by: Keith Randall <khr@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Cuong Manh Le <cuong.manhle.vn@gmail.com>
This commit is contained in:
parent
2f5e2f6cc1
commit
96d16803c2
@ -340,7 +340,7 @@ func mayCall(n ir.Node) bool {
|
||||
case ir.OLITERAL, ir.ONIL, ir.ONAME, ir.OLINKSYMOFFSET, ir.OMETHEXPR,
|
||||
ir.OAND, ir.OANDNOT, ir.OLSH, ir.OOR, ir.ORSH, ir.OXOR, ir.OCOMPLEX, ir.OEFACE,
|
||||
ir.OADDR, ir.OBITNOT, ir.ONOT, ir.OPLUS,
|
||||
ir.OCAP, ir.OIMAG, ir.OLEN, ir.OREAL,
|
||||
ir.OCAP, ir.OIMAG, ir.OLEN, ir.OREAL, ir.OMIN, ir.OMAX,
|
||||
ir.OCONVNOP, ir.ODOT,
|
||||
ir.OCFUNC, ir.OIDATA, ir.OITAB, ir.OSPTR,
|
||||
ir.OBYTES2STRTMP, ir.OGETG, ir.OGETCALLERPC, ir.OGETCALLERSP, ir.OSLICEHEADER, ir.OSTRINGHEADER:
|
||||
|
15
test/fixedbugs/issue60582.go
Normal file
15
test/fixedbugs/issue60582.go
Normal file
@ -0,0 +1,15 @@
|
||||
// build
|
||||
|
||||
// Copyright 2023 The Go Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
|
||||
func main() {
|
||||
a, b := 5, 7
|
||||
fmt.Println(min(a, b))
|
||||
fmt.Println(max(a, b))
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user