// Copyright 2021 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Similar to inline.go, but only for architectures that can merge loads.
packagefoo
import(
"encoding/binary"
)
// Ensure that simple encoding/binary functions are cheap enough
// that functions using them can also be inlined (issue 42958).
funcendian(b[]byte)uint64{// ERROR "can inline endian" "b does not escape"
returnbinary.LittleEndian.Uint64(b)+binary.BigEndian.Uint64(b)// ERROR "inlining call to binary.littleEndian.Uint64" "inlining call to binary.bigEndian.Uint64"
}
funcappendLittleEndian(b[]byte)[]byte{// ERROR "can inline appendLittleEndian" "leaking param: b to result ~r0 level=0"