diff options
| author | Mark Freeman <mark@golang.org> | 2026-04-01 14:54:01 -0400 |
|---|---|---|
| committer | Mark Freeman <mark@golang.org> | 2026-04-01 20:07:33 -0700 |
| commit | affadc7997466dfacad5b9a3dc90ee5e7a7b6085 (patch) | |
| tree | 04818f7f3e780e0434e32984a1b3cc91f1e4ad52 /src/cmd | |
| parent | e7a2019a1b79e655452f86d5055b13e080aa89ac (diff) | |
| download | go-affadc7997466dfacad5b9a3dc90ee5e7a7b6085.tar.xz | |
cmd/compile/internal/noder: add encoding for generic methods
We have not yet added the decoding on the reader side.
Change-Id: Ic7f8dc51b6b9a2c214b402b1314ee84c0085c16a
Reviewed-on: https://go-review.googlesource.com/c/go/+/761983
Reviewed-by: Robert Griesemer <gri@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Auto-Submit: Mark Freeman <markfreeman@google.com>
Diffstat (limited to 'src/cmd')
| -rw-r--r-- | src/cmd/compile/internal/noder/writer.go | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/cmd/compile/internal/noder/writer.go b/src/cmd/compile/internal/noder/writer.go index e7f7df76a9..a42b11f6fa 100644 --- a/src/cmd/compile/internal/noder/writer.go +++ b/src/cmd/compile/internal/noder/writer.go @@ -852,6 +852,19 @@ func (w *writer) doObj(wext *writer, obj types2.Object) pkgbits.CodeObj { sig := obj.Type().(*types2.Signature) w.pos(obj) + if isGenericMethod(sig) { + // otherwise the reader won't know to expect the flag + assert(w.Version().Has(pkgbits.GenericMethods)) + w.Bool(true) // generic method + + w.selector(obj) + w.typeParamNames(sig.RecvTypeParams()) + w.param(sig.Recv()) + } else { + if w.Version().Has(pkgbits.GenericMethods) { + w.Bool(false) // function + } + } w.typeParamNames(sig.TypeParams()) w.signature(sig) w.pos(decl) |
