blob: c8fec91557223314f85cdbb883b5589246c38d8b [file] [log] [blame]
This test exercises the Definition request in a Go assembly file.
For now we support only references to package-level symbols defined in
the same package or a dependency.
Repeatedly jumping to Definition on ff ping-pongs between the Go and
assembly declarations.
-- go.mod --
module example.com
go 1.18
-- a/a.go --
package a
import _ "fmt"
import _ "example.com/b"
func ff() //@ loc(ffgo, "ff"), def("ff", ffasm)
var _ = ff // pacify unusedfunc analyzer
-- a/asm.s --
// portable assembly
TEXT ·ff(SB), $16 //@ loc(ffasm, "ff"), def("ff", ffgo)
CALL example·com∕b·B //@ def("com", bB)
JMP ·ff //@ def("ff", ffgo)
JMP label //@ def("label", label)
label: //@ loc(label,"label")
RET
-- b/b.go --
package b
func B() {} //@ loc(bB, "B")