From 483f28d1cf4baedbce900bc8278e8508127351cc Mon Sep 17 00:00:00 2001 From: Araq Date: Tue, 10 Jul 2012 22:17:47 +0200 Subject: fixes #147 --- compiler/semexprs.nim | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'compiler') diff --git a/compiler/semexprs.nim b/compiler/semexprs.nim index aea1227d0..803dcdcfe 100755 --- a/compiler/semexprs.nim +++ b/compiler/semexprs.nim @@ -762,10 +762,11 @@ proc makeDeref(n: PNode): PNode = result = newNodeIT(nkHiddenDeref, n.info, t.sons[0]) addSon(result, n) t = skipTypes(t.sons[0], {tyGenericInst}) - if t.kind in {tyPtr, tyRef}: + while t.kind in {tyPtr, tyRef}: var a = result result = newNodeIT(nkHiddenDeref, n.info, t.sons[0]) addSon(result, a) + t = skipTypes(t.sons[0], {tyGenericInst}) proc builtinFieldAccess(c: PContext, n: PNode, flags: TExprFlags): PNode = ## returns nil if it's not a built-in field access -- cgit 1.4.1-2-gfad0