summary refs log tree commit diff stats
path: root/compiler/destroyer.nim
diff options
context:
space:
mode:
authorLemonBoy <LemonBoy@users.noreply.github.com>2019-02-09 19:55:26 +0100
committerAndreas Rumpf <rumpf_a@web.de>2019-02-09 19:55:26 +0100
commit0c4d1fd10b0c69cef2597a59799d87110d613eae (patch)
treeb8580dbb04d434fb504fd2ba46177102b1208e50 /compiler/destroyer.nim
parent1e88bf1defe2aeb18394e4130f019acb70a63c75 (diff)
downloadNim-0c4d1fd10b0c69cef2597a59799d87110d613eae.tar.gz
Do not walk into type sub-nodes for cast/conv expr (#10616)
Diffstat (limited to 'compiler/destroyer.nim')
-rw-r--r--compiler/destroyer.nim6
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/destroyer.nim b/compiler/destroyer.nim
index 22ace3634..6c47c8884 100644
--- a/compiler/destroyer.nim
+++ b/compiler/destroyer.nim
@@ -601,6 +601,12 @@ proc p(n: PNode; c: var Con): PNode =
   of nkNone..nkNilLit, nkTypeSection, nkProcDef, nkConverterDef, nkMethodDef,
       nkIteratorDef, nkMacroDef, nkTemplateDef, nkLambda, nkDo, nkFuncDef:
     result = n
+  of nkCast, nkHiddenStdConv, nkHiddenSubConv, nkConv:
+    result = copyNode(n)
+    # Destination type
+    result.add n[0]
+    # Analyse the inner expression
+    result.add p(n[1], c)
   else:
     result = copyNode(n)
     recurse(n, result)