diff options
author | Araq <rumpf_a@web.de> | 2017-02-26 16:17:33 +0100 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2017-02-26 17:41:00 +0100 |
commit | fb37d13f46af037aa5f40f0715e4513f515f5de2 (patch) | |
tree | 0544af6dab79a5679e678f6fcb1391a54ee4ef54 /compiler | |
parent | 53f4bdad236c69f0e582a9aaa8bc74dc504d841c (diff) | |
download | Nim-fb37d13f46af037aa5f40f0715e4513f515f5de2.tar.gz |
fixes #5439
Diffstat (limited to 'compiler')
-rw-r--r-- | compiler/cgen.nim | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/compiler/cgen.nim b/compiler/cgen.nim index 7fef34a27..decbe55c3 100644 --- a/compiler/cgen.nim +++ b/compiler/cgen.nim @@ -595,7 +595,7 @@ proc cgsym(m: BModule, name: string): Rope = proc generateHeaders(m: BModule) = add(m.s[cfsHeaders], tnl & "#include \"nimbase.h\"" & tnl) - + for it in m.headerFiles: if it[0] == '#': add(m.s[cfsHeaders], rope(it.replace('`', '"') & tnl)) @@ -1377,9 +1377,10 @@ proc myClose(graph: ModuleGraph; b: PPassContext, n: PNode): PNode = registerModuleToMain(m.g, m.module) if sfMainModule in m.module.flags: - incl m.flags, objHasKidsValid - var disp = generateMethodDispatchers(graph) - for i in 0..sonsLen(disp)-1: genProcAux(m, disp.sons[i].sym) + if m.g.forwardedProcsCounter == 0: + incl m.flags, objHasKidsValid + let disp = generateMethodDispatchers(graph) + for x in disp: genProcAux(m, x.sym) genMainProc(m) proc cgenWriteModules*(backend: RootRef, config: ConfigRef) = |