diff options
Diffstat (limited to 'compiler')
-rw-r--r-- | compiler/ccgstmts.nim | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/compiler/ccgstmts.nim b/compiler/ccgstmts.nim index aaed37508..367e693e9 100644 --- a/compiler/ccgstmts.nim +++ b/compiler/ccgstmts.nim @@ -382,7 +382,13 @@ proc genSingleVar(p: BProc, v: PSym; vn, value: PNode) = proc genSingleVar(p: BProc, a: PNode) = let v = a[0].sym - if sfCompileTime in v.flags: return + if sfCompileTime in v.flags: + # fix issue #12640 + # {.global, compileTime.} pragma in proc + if sfGlobal in v.flags and p.prc != nil and p.prc.kind == skProc: + discard + else: + return genSingleVar(p, v, a[0], a[2]) proc genClosureVar(p: BProc, a: PNode) = |