diff --git a/compiler/ast2nif.nim b/compiler/ast2nif.nim index 97e6343da0..48803e25e6 100644 --- a/compiler/ast2nif.nim +++ b/compiler/ast2nif.nim @@ -321,7 +321,7 @@ proc collectGenericParams(w: var Writer; n: PNode) = proc writeSymDef(w: var Writer; dest: var TokenBuf; sym: PSym) = dest.addParLe sdefTag, trLineInfo(w, sym.infoImpl) dest.addSymDef pool.syms.getOrIncl(w.toNifSymName(sym)), NoLineInfo - if sfExported in sym.flagsImpl: + if {sfExported, sfFromGeneric} * sym.flagsImpl == {sfExported}: dest.addIdent "x" else: dest.addDotToken diff --git a/compiler/semtypinst.nim b/compiler/semtypinst.nim index ed9200f7f0..b290faec78 100644 --- a/compiler/semtypinst.nim +++ b/compiler/semtypinst.nim @@ -373,6 +373,7 @@ proc replaceTypeVarsS(cl: var TReplTypeVars, s: PSym, t: PType): PSym = var g: G[string] ]# + # XXX FIXME This causes system.Natural to be duplicated during compilation of system.nim as cl.owner == nil! result = copySym(s, cl.c.idgen) incl(result.flagsImpl, sfFromGeneric) #idTablePut(cl.symMap, s, result)