From: Austin Clements Date: Fri, 14 Oct 2016 21:35:18 +0000 (-0400) Subject: test: simplify fixedbugs/issue15747.go X-Git-Tag: go1.8beta1~865 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=ad5fd2872f6cce199aa4f543801d8793ef0a901f;p=gostls13.git 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 --- 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"