From ad5fd2872f6cce199aa4f543801d8793ef0a901f Mon Sep 17 00:00:00 2001 From: Austin Clements Date: Fri, 14 Oct 2016 17:35:18 -0400 Subject: [PATCH] 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 TryBot-Result: Gobot Gobot Reviewed-by: Keith Randall --- test/fixedbugs/issue15747.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/test/fixedbugs/issue15747.go b/test/fixedbugs/issue15747.go index 4a01344410..08aa09cbd7 100644 --- a/test/fixedbugs/issue15747.go +++ b/test/fixedbugs/issue15747.go @@ -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 // being live. We should not see plain xx again. 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 { return err } return nil } +//go:noinline func f2(d []byte, n int) (odata, res []byte, e interface{}) { // ERROR "live at entry to f2: d" if n > len(d) { return d, nil, &T{M: "hello"} // ERROR "live at call to newobject: d" -- 2.48.1