From 57c30ac6690dbbe4024adbd2b1d08d18deaeb665 Mon Sep 17 00:00:00 2001 From: Sasha Koshka Date: Wed, 6 Aug 2025 20:19:31 -0400 Subject: [PATCH] generate: Generator compiles --- generate/generate.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/generate/generate.go b/generate/generate.go index b0be848..0f21e37 100644 --- a/generate/generate.go +++ b/generate/generate.go @@ -628,7 +628,7 @@ func (this *Generator) generateDecodeBranch(hash [16]byte, typ Type, typeName st nn, err = this.generateErrorCheck() n += nn; if err != nil { return n, err } elementTagVar := this.newTemporaryVar("elementTag") - nn, err = this.iprintf("var %s uint64\n", lengthVar) + nn, err = this.iprintf("var %s tape.Tag\n", elementTagVar) n += nn; if err != nil { return n, err } nn, err = this.iprintf("%s, nn, err = decoder.ReadTag()\n", elementTagVar) n += nn; if err != nil { return n, err } @@ -681,7 +681,7 @@ func (this *Generator) generateDecodeBranch(hash [16]byte, typ Type, typeName st nn, err = this.iprintf("for index := range int(%s) {\n", lengthVar) n += nn; if err != nil { return n, err } this.push() - nn, err = this.generateDecodeValue(typ.Element, "", "(*this)[index]", elementTagVar) + nn, err = this.generateDecodeValue(typ.Element, "", "(&(*this)[index])", elementTagVar) n += nn; if err != nil { return n, err } this.pop() nn, err = this.iprintf("}\n") @@ -758,7 +758,7 @@ func (this *Generator) generateDecodeBranch(hash [16]byte, typ Type, typeName st // decode payload nn, err = this.generateDecodeValue( field.Type, "", - fmt.Sprintf("&(this.%s)", field.Name), fieldTagVar) + fmt.Sprintf("(&(this.%s))", field.Name), fieldTagVar) n += nn; if err != nil { return n, err } this.pop() }