diff --git a/src/cmd/compile/internal/gc/range.go b/src/cmd/compile/internal/gc/range.go index bf30d9388e..cbe69a1ebc 100644 --- a/src/cmd/compile/internal/gc/range.go +++ b/src/cmd/compile/internal/gc/range.go @@ -588,6 +588,7 @@ func arrayClear(n, v1, v2, a *Node) bool { var fn *Node if types.Haspointers(a.Type.Elem()) { // memclrHasPointers(hp, hn) + Curfn.Func.setWBPos(stmt.Pos) fn = mkcall("memclrHasPointers", nil, nil, hp, hn) } else { // memclrNoHeapPointers(hp, hn) diff --git a/src/cmd/compile/internal/gc/walk.go b/src/cmd/compile/internal/gc/walk.go index 528aacb213..b84bc26e04 100644 --- a/src/cmd/compile/internal/gc/walk.go +++ b/src/cmd/compile/internal/gc/walk.go @@ -2860,6 +2860,7 @@ func extendslice(n *Node, init *Nodes) *Node { hasPointers := types.Haspointers(elemtype) if hasPointers { clrname = "memclrHasPointers" + Curfn.Func.setWBPos(n.Pos) } var clr Nodes