* fixes #19278; make `privateAccess` work with generic ref object * fixes
This commit is contained in:
parent
878919a4df
commit
7c2aa53e44
3 changed files with 18 additions and 3 deletions
|
|
@ -265,8 +265,8 @@ proc fieldVisible*(c: PContext, f: PSym): bool {.inline.} =
|
|||
if fmoduleId == module.id: return true
|
||||
if f.kind == skField:
|
||||
var symObj = f.owner
|
||||
if symObj.typ.kind in {tyRef, tyPtr}:
|
||||
symObj = symObj.typ[0].sym
|
||||
if symObj.typ.skipTypes({tyGenericBody, tyGenericInst, tyGenericInvocation, tyAlias}).kind in {tyRef, tyPtr}:
|
||||
symObj = symObj.typ.toObjectFromRefPtrGeneric.sym
|
||||
for scope in allScopes(c.currentScope):
|
||||
for sym in scope.allowPrivateAccess:
|
||||
if symObj.id == sym.id: return true
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue