diff options
author | nimelehin <nimelehin@gmail.com> | 2021-10-19 18:59:34 +0300 |
---|---|---|
committer | Dan Scales <danscales@google.com> | 2021-10-28 14:25:03 +0000 |
commit | a3bb28e5ffee83c30a2c65963ef032cc2ab73a3c (patch) | |
tree | dd2afaf2dbb18b1d12ad9f531e6b84f9fe209827 /test/inline.go | |
parent | 2ff1074f5ac48e67ee079dafc9f0e314bc454510 (diff) | |
download | go-a3bb28e5ffee83c30a2c65963ef032cc2ab73a3c.tar.gz go-a3bb28e5ffee83c30a2c65963ef032cc2ab73a3c.zip |
cmd/compile: allow inlining of ORANGE
Updates #14768
Change-Id: I33831f616eae5eeb099033e2b9cf90fa70d6ca86
Reviewed-on: https://go-review.googlesource.com/c/go/+/356869
Run-TryBot: Alberto Donizetti <alb.donizetti@gmail.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Dan Scales <danscales@google.com>
Trust: Dan Scales <danscales@google.com>
Trust: Alberto Donizetti <alb.donizetti@gmail.com>
Diffstat (limited to 'test/inline.go')
-rw-r--r-- | test/inline.go | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/inline.go b/test/inline.go index 599d5233e0..d0ebe84aa5 100644 --- a/test/inline.go +++ b/test/inline.go @@ -160,6 +160,19 @@ func switchType(x interface{}) int { // ERROR "can inline switchType" "x does no } } +func inlineRangeIntoMe(data []int) { // ERROR "can inline inlineRangeIntoMe" "data does not escape" + rangeFunc(data, 12) // ERROR "inlining call to rangeFunc" +} + +func rangeFunc(xs []int, b int) int { // ERROR "can inline rangeFunc" "xs does not escape" + for i, x := range xs { + if x == b { + return i + } + } + return -1 +} + type T struct{} func (T) meth(int, int) {} // ERROR "can inline T.meth" |