.partial object field names are left unmangled; mangling should be done by the macro instead
This commit is contained in:
parent
c59bc0cc18
commit
55c244400d
2 changed files with 3 additions and 3 deletions
|
|
@ -485,7 +485,7 @@ proc fillPartialObject(c: PContext; n: PNode; typ: PType) =
|
||||||
let y = considerQuotedIdent(n[1])
|
let y = considerQuotedIdent(n[1])
|
||||||
let obj = x.typ.skipTypes(abstractPtrs)
|
let obj = x.typ.skipTypes(abstractPtrs)
|
||||||
if obj.kind == tyObject and tfPartial in obj.flags:
|
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.typ = skipIntLit(typ)
|
||||||
field.position = sonsLen(obj.n)
|
field.position = sonsLen(obj.n)
|
||||||
addSon(obj.n, newSymNode(field))
|
addSon(obj.n, newSymNode(field))
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
discard """
|
discard """
|
||||||
out: '''(foo0: 38, other1: string here)
|
output: '''(foo: 38, other: string here)
|
||||||
43'''
|
43'''
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
@ -12,7 +12,7 @@ proc my(f: Foo) =
|
||||||
let f.foo = 38
|
let f.foo = 38
|
||||||
let f.other = "string here"
|
let f.other = "string here"
|
||||||
echo f[]
|
echo f[]
|
||||||
echo f.foo0 + 5
|
echo f.foo + 5
|
||||||
|
|
||||||
var g: Foo
|
var g: Foo
|
||||||
new(g)
|
new(g)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue