summary refs log tree commit diff stats
path: root/compiler/semdata.nim
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2013-09-03 23:46:41 +0200
committerAraq <rumpf_a@web.de>2013-09-03 23:46:41 +0200
commit40b379859c1f0775718a873a0ba58d32510855aa (patch)
tree5e45f929dba481fb2413d2f28587a1dbc65b2bb5 /compiler/semdata.nim
parent891f871ba71b0b6e136fea13e5be0bd3e0860fea (diff)
parent6fa72c5d9d9662e6657ddf5c670dc56dc2748ecc (diff)
downloadNim-40b379859c1f0775718a873a0ba58d32510855aa.tar.gz
resolved the conflict
Diffstat (limited to 'compiler/semdata.nim')
-rw-r--r--compiler/semdata.nim6
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/semdata.nim b/compiler/semdata.nim
index 8b04f4af5..4c066f5fa 100644
--- a/compiler/semdata.nim
+++ b/compiler/semdata.nim
@@ -72,6 +72,7 @@ type
     libs*: TLinkedList         # all libs used by this module
     semConstExpr*: proc (c: PContext, n: PNode): PNode {.nimcall.} # for the pragmas
     semExpr*: proc (c: PContext, n: PNode, flags: TExprFlags = {}): PNode {.nimcall.}
+    semTryExpr*: proc (c: PContext, n: PNode, flags: TExprFlags = {}): PNode {.nimcall.}
     semOperand*: proc (c: PContext, n: PNode, flags: TExprFlags = {}): PNode {.nimcall.}
     semConstBoolExpr*: proc (c: PContext, n: PNode): PNode {.nimcall.} # XXX bite the bullet
     semOverloadedCall*: proc (c: PContext, n, nOrig: PNode,
@@ -204,6 +205,11 @@ proc makeTypeDesc*(c: PContext, typ: PType): PType =
   result = newTypeS(tyTypeDesc, c)
   result.addSonSkipIntLit(typ.AssertNotNil)
 
+proc makeTypeSymNode*(c: PContext, typ: PType, info: TLineInfo): PNode =
+  let typedesc = makeTypeDesc(c, typ)
+  let sym = newSym(skType, idAnon, getCurrOwner(), info).linkTo(typedesc)
+  return newSymNode(sym, info)
+
 proc newTypeS(kind: TTypeKind, c: PContext): PType = 
   result = newType(kind, getCurrOwner())