summary refs log tree commit diff stats
path: root/compiler
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2018-05-27 13:38:09 +0200
committerAndreas Rumpf <rumpf_a@web.de>2018-05-27 13:38:09 +0200
commit98498087202203e343c782ce24e294bd0b82becf (patch)
tree1bec5f2fa4f14b9925b10622288390f43673175c /compiler
parent669a5644926290e19a3fc32fd319c056183ff2d9 (diff)
parent7e8eadb6ba9c94ea429ee7178e8cc8fbcbf558ea (diff)
downloadNim-98498087202203e343c782ce24e294bd0b82becf.tar.gz
Merge branch 'devel' into araq-big-refactoring
Diffstat (limited to 'compiler')
-rw-r--r--compiler/astalgo.nim16
-rw-r--r--compiler/sem.nim1
-rw-r--r--compiler/semcall.nim1
3 files changed, 10 insertions, 8 deletions
diff --git a/compiler/astalgo.nim b/compiler/astalgo.nim
index 7079e77cc..5912f1359 100644
--- a/compiler/astalgo.nim
+++ b/compiler/astalgo.nim
@@ -33,22 +33,22 @@ when declared(echo):
 
 template mdbg*: bool {.dirty.} =
   when compiles(c.module):
-    c.module.fileIdx.int32 == gProjectMainIdx
+    c.module.fileIdx.int32 == c.config.projectMainIdx
   elif compiles(c.c.module):
-    c.c.module.fileIdx.int32 == gProjectMainIdx
+    c.c.module.fileIdx.int32 == c.c.config.projectMainIdx
   elif compiles(m.c.module):
-    m.c.module.fileIdx.int32 == gProjectMainIdx
+    m.c.module.fileIdx.int32 == m.c.config.projectMainIdx
   elif compiles(cl.c.module):
-    cl.c.module.fileIdx.int32 == gProjectMainIdx
+    cl.c.module.fileIdx.int32 == cl.c.config.projectMainIdx
   elif compiles(p):
     when compiles(p.lex):
-      p.lex.fileIdx.int32 == gProjectMainIdx
+      p.lex.fileIdx.int32 == p.lex.config.projectMainIdx
     else:
-      p.module.module.fileIdx.int32 == gProjectMainIdx
+      p.module.module.fileIdx.int32 == p.config.projectMainIdx
   elif compiles(m.module.fileIdx):
-    m.module.fileIdx.int32 == gProjectMainIdx
+    m.module.fileIdx.int32 == m.config.projectMainIdx
   elif compiles(L.fileIdx):
-    L.fileIdx.int32 == gProjectMainIdx
+    L.fileIdx.int32 == L.config.projectMainIdx
   else:
     error()
 
diff --git a/compiler/sem.nim b/compiler/sem.nim
index b7dd1df7a..6b3287df5 100644
--- a/compiler/sem.nim
+++ b/compiler/sem.nim
@@ -38,6 +38,7 @@ proc changeType(c: PContext; n: PNode, newType: PType, check: bool)
 proc semLambda(c: PContext, n: PNode, flags: TExprFlags): PNode
 proc semTypeNode(c: PContext, n: PNode, prev: PType): PType
 proc semStmt(c: PContext, n: PNode): PNode
+proc semOpAux(c: PContext, n: PNode)
 proc semParamList(c: PContext, n, genericParams: PNode, s: PSym)
 proc addParams(c: PContext, n: PNode, kind: TSymKind)
 proc maybeAddResult(c: PContext, s: PSym, n: PNode)
diff --git a/compiler/semcall.nim b/compiler/semcall.nim
index 894d2ebb2..9c7b9afde 100644
--- a/compiler/semcall.nim
+++ b/compiler/semcall.nim
@@ -254,6 +254,7 @@ proc resolveOverloads(c: PContext, n, orig: PNode,
   var f = n.sons[0]
   if f.kind == nkBracketExpr:
     # fill in the bindings:
+    semOpAux(c, f)
     initialBinding = f
     f = f.sons[0]
   else: