diff options
author | flywind <43030857+xflywind@users.noreply.github.com> | 2020-11-03 18:41:41 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-03 11:41:41 +0100 |
commit | b8bcf236dd29ee2a6ec7587dc3f028f14023ebec (patch) | |
tree | 65e96f2ec13ac371229464a869e1863f0f22b442 /compiler | |
parent | fde17b159fdc96eda5609fd98e1fe3c7a34ef40b (diff) | |
download | Nim-b8bcf236dd29ee2a6ec7587dc3f028f14023ebec.tar.gz |
fix #12640 (#15829)
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) = |