diff --git a/compiler/semexprs.nim b/compiler/semexprs.nim index d3650f984..34e8c6fcd 100644 --- a/compiler/semexprs.nim +++ b/compiler/semexprs.nim @@ -1629,8 +1629,9 @@ proc instantiateCreateFlowVarCall(c: PContext; t: PType; result = c.semGenerateInstance(c, sym, bindings, info) # since it's an instantiation, we unmark it as a compilerproc. Otherwise # codegen would fail: - result.flags = result.flags - {sfCompilerProc, sfExportC, sfImportC} - result.loc.r = nil + if sfCompilerProc in result.flags: + result.flags = result.flags - {sfCompilerProc, sfExportC, sfImportC} + result.loc.r = nil proc setMs(n: PNode, s: PSym): PNode = result = n