// 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. package main import ( "fmt" "regabipragma.dir/tmp" ) type S string //go:noinline func (s S) ff(t string) string { return string(s) + " " + t } //go:noinline //go:registerparams func f(s,t string) string { // ERROR "Declared function f has register params" return s + " " + t } func check(s string) { if s != "Hello world!" { fmt.Printf("FAIL, wanted 'Hello world!' but got '%s'\n", s) } } func main() { check(f("Hello", "world!")) // ERROR "Called function ...f has register params" check(tmp.F("Hello", "world!")) // ERROR "Called function regabipragma.dir/tmp.F has register params" check(S("Hello").ff("world!")) check(tmp.S("Hello").FF("world!")) }