From 492475384139d51d25afe06c540d57196ea16f81 Mon Sep 17 00:00:00 2001 From: xushiwei Date: Thu, 2 Nov 2023 21:56:47 +0800 Subject: [PATCH] gox: NewType with src (not pos) --- cl/compile.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/cl/compile.go b/cl/compile.go index e227e7c45..1fd3d0193 100644 --- a/cl/compile.go +++ b/cl/compile.go @@ -887,11 +887,12 @@ func preloadFile(p *gox.Package, ctx *blockCtx, file string, f *ast.File, gopFil case token.TYPE: for _, spec := range d.Specs { t := spec.(*ast.TypeSpec) - name := t.Name.Name + tName := t.Name + name := tName.Name if debugLoad { log.Println("==> Preload type", name) } - pos := t.Name.Pos() + pos := tName.Pos() ld := getTypeLoader(parent, syms, pos, name) defs := ctx.pkg.NewTypeDefs() if gopFile { @@ -902,13 +903,13 @@ func preloadFile(p *gox.Package, ctx *blockCtx, file string, f *ast.File, gopFil if debugLoad { log.Println("==> Load > AliasType", name) } - defs.AliasType(name, toType(ctx, t.Type), t.Pos()) + defs.AliasType(name, toType(ctx, t.Type), tName) return } if debugLoad { log.Println("==> Load > NewType", name) } - decl := defs.NewType(name, pos) + decl := defs.NewType(name, tName) if t.Doc != nil { defs.SetComments(t.Doc) } else if d.Doc != nil { @@ -920,7 +921,7 @@ func preloadFile(p *gox.Package, ctx *blockCtx, file string, f *ast.File, gopFil } decl.InitType(ctx.pkg, toType(ctx, t.Type)) if rec := ctx.recorder(); rec != nil { - rec.Def(t.Name, decl.Type().Obj()) + rec.Def(tName, decl.Type().Obj()) } } }