Commit ad5fd287 authored by Austin Clements's avatar Austin Clements

test: simplify fixedbugs/issue15747.go

The error check patterns in this test are more complex than necessary
because f2 gets inlined into f1. This behavior isn't important to the
test, so disable inlining of f2 and simplify the error check patterns.

Change-Id: Ia8aee92a52f9217ad71b89b2931494047e8d2185
Reviewed-on: https://go-review.googlesource.com/31132
Run-TryBot: Austin Clements <austin@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: default avatarKeith Randall <khr@golang.org>
parent 9897e408
...@@ -22,15 +22,16 @@ func f1(q *Q, xx []byte) interface{} { // ERROR "live at entry to f1: xx" "live ...@@ -22,15 +22,16 @@ func f1(q *Q, xx []byte) interface{} { // ERROR "live at entry to f1: xx" "live
// xx was live for the first two prints but then it switched to &xx // xx was live for the first two prints but then it switched to &xx
// being live. We should not see plain xx again. // being live. We should not see plain xx again.
if b { if b {
global = &xx // ERROR "live at call to writebarrierptr: &xx[^x]*$" global = &xx // ERROR "live at call to writebarrierptr: &xx$"
} }
xx, _, err := f2(xx, 5) // ERROR "live at call to newobject:( d)? &xx( odata.ptr)?" "live at call to writebarrierptr: (e|err.data err.type)$" xx, _, err := f2(xx, 5) // ERROR "live at call to writebarrierptr: err.data err.type$" "live at call to f2: &xx$"
if err != nil { if err != nil {
return err return err
} }
return nil return nil
} }
//go:noinline
func f2(d []byte, n int) (odata, res []byte, e interface{}) { // ERROR "live at entry to f2: d" func f2(d []byte, n int) (odata, res []byte, e interface{}) { // ERROR "live at entry to f2: d"
if n > len(d) { if n > len(d) {
return d, nil, &T{M: "hello"} // ERROR "live at call to newobject: d" return d, nil, &T{M: "hello"} // ERROR "live at call to newobject: d"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment