diff --git a/gen/schema_gen_sum.go b/gen/schema_gen_sum.go index 083952c26..a5dbaa8fd 100644 --- a/gen/schema_gen_sum.go +++ b/gen/schema_gen_sum.go @@ -465,10 +465,9 @@ func (g *schemaGen) allOf(name string, schema *jsonschema.Schema) (*ir.Type, err return nil, err } - // Do not modify reference fields, as they may still refer to the original schema. - if mergedSchema.Ref.IsZero() { - mergedSchema.Ref = schema.Ref - } + // The reference field must not change + mergedSchema.Ref = schema.Ref + return g.generate(name, mergedSchema, false) }