Skip to content

Commit

Permalink
test: simplify fixedbugs/issue15747.go
Browse files Browse the repository at this point in the history
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: Keith Randall <khr@golang.org>
  • Loading branch information
aclements committed Oct 15, 2016
1 parent 9897e40 commit ad5fd28
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions test/fixedbugs/issue15747.go
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down

0 comments on commit ad5fd28

Please sign in to comment.