diff --git a/src/preserves/preserves_schema_nim.nim b/src/preserves/preserves_schema_nim.nim index ace740e..a768f69 100644 --- a/src/preserves/preserves_schema_nim.nim +++ b/src/preserves/preserves_schema_nim.nim @@ -410,7 +410,7 @@ proc embeddingParams(scm: Schema; embeddable: bool): PNode = newEmpty() proc identDef(scm: Schema; a, b: PNode; embeddable: bool): PNode = - if embeddable and b.kind notin {nkBracketExpr, nkTupleTy} and + if embeddable and scm.hasEmbeddedType and b.kind notin {nkBracketExpr, nkTupleTy} and (b.kind != nkIdent or b.ident.s != scm.embeddedIdentString): nn(nkIdentDefs, a, nn(nkBracketExpr, b, embeddedIdent(scm)), newEmpty()) else: