.partial object field names are left unmangled; mangling should be done by the macro instead

This commit is contained in:
Andreas Rumpf
2017-06-05 10:30:24 +02:00
parent c59bc0cc18
commit 55c244400d
2 changed files with 3 additions and 3 deletions

View File

@@ -485,7 +485,7 @@ proc fillPartialObject(c: PContext; n: PNode; typ: PType) =
let y = considerQuotedIdent(n[1])
let obj = x.typ.skipTypes(abstractPtrs)
if obj.kind == tyObject and tfPartial in obj.flags:
let field = newSym(skField, getIdent(y.s & $obj.n.len), obj.sym, n[1].info)
let field = newSym(skField, getIdent(y.s), obj.sym, n[1].info)
field.typ = skipIntLit(typ)
field.position = sonsLen(obj.n)
addSon(obj.n, newSymNode(field))

View File

@@ -1,5 +1,5 @@
discard """
out: '''(foo0: 38, other1: string here)
output: '''(foo: 38, other: string here)
43'''
"""
@@ -12,7 +12,7 @@ proc my(f: Foo) =
let f.foo = 38
let f.other = "string here"
echo f[]
echo f.foo0 + 5
echo f.foo + 5
var g: Foo
new(g)