var ErrNoLinkname … // linknameDefinition finds the definition of the linkname directive in m at pos. // If there is no linkname directive at pos, returns ErrNoLinkname. func linknameDefinition(ctx context.Context, snapshot *cache.Snapshot, m *protocol.Mapper, from protocol.Position) ([]protocol.Location, error) { … } // parseLinkname attempts to parse a go:linkname declaration at the given pos. // If successful, it returns // - package path referenced // - object name referenced // - byte offset in mapped file of the start of the link target // of the linkname directives 2nd argument. // // If the position is not in the second argument of a go:linkname directive, // or parsing fails, it returns "", "", 0. func parseLinkname(m *protocol.Mapper, pos protocol.Position) (pkgPath, name string, targetOffset int) { … } // findLinkname searches dependencies of packages containing fh for an object // with linker name matching the given package path and name. func findLinkname(ctx context.Context, snapshot *cache.Snapshot, pkgPath PackagePath, name string) (*cache.Package, *parsego.File, token.Pos, error) { … }