From 6bd16beb9f0104f95754fc41b3890246b8c536d1 Mon Sep 17 00:00:00 2001 From: Mikhail Sherstennikov Date: Wed, 19 Jun 2024 22:20:31 +0300 Subject: [PATCH] Fix createSlice for reference type The problem was found when trying to serialize field `v []Uint256`, where Uint256 is a struct with SSZ interface. --- sszgen/generator/unmarshal.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sszgen/generator/unmarshal.go b/sszgen/generator/unmarshal.go index 4c8b947..1576e5c 100644 --- a/sszgen/generator/unmarshal.go +++ b/sszgen/generator/unmarshal.go @@ -340,7 +340,7 @@ func (v *Value) createSlice(useNumVariable bool) string { // []int uses the Extend functions in the fastssz package return fmt.Sprintf("::.%s = ssz.Extend%s(::.%s, %s)", v.name, uintVToName(v.e), v.name, size) - case TypeContainer: + case TypeContainer, TypeReference: // []*(ref.)Struct{} ptr := "*" if v.e.noPtr {