diff options
author | flywind <43030857+xflywind@users.noreply.github.com> | 2020-11-03 01:27:39 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-02 18:27:39 +0100 |
commit | fde17b159fdc96eda5609fd98e1fe3c7a34ef40b (patch) | |
tree | 8b3ab81e2fb95ddc2a38045690a594884c121056 /compiler | |
parent | c243639979b795d28a69f19ad988726225e22fcd (diff) | |
download | Nim-fde17b159fdc96eda5609fd98e1fe3c7a34ef40b.tar.gz |
follow #15818 and close #7109 (#15823)
* follow #15818 and close #7109 * Update compiler/jsgen.nim Co-authored-by: Juan Carlos <juancarlospaco@gmail.com> Co-authored-by: Juan Carlos <juancarlospaco@gmail.com>
Diffstat (limited to 'compiler')
-rw-r--r-- | compiler/jsgen.nim | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/compiler/jsgen.nim b/compiler/jsgen.nim index 10c072253..d124ae5fe 100644 --- a/compiler/jsgen.nim +++ b/compiler/jsgen.nim @@ -2549,9 +2549,12 @@ proc gen(p: PProc, n: PNode, r: var TCompRes) = of nkAsmStmt: genAsmOrEmitStmt(p, n) of nkTryStmt, nkHiddenTryStmt: genTry(p, n, r) of nkRaiseStmt: genRaiseStmt(p, n) - of nkTypeSection, nkCommentStmt, nkIteratorDef, nkIncludeStmt, + of nkTypeSection, nkCommentStmt, nkIncludeStmt, nkImportStmt, nkImportExceptStmt, nkExportStmt, nkExportExceptStmt, nkFromStmt, nkTemplateDef, nkMacroDef, nkStaticStmt: discard + of nkIteratorDef: + if n[0].sym.typ.callConv == TCallingConvention.ccClosure: + globalError(p.config, n.info, "Closure iterators are not supported by JS backend!") of nkPragma: genPragma(p, n) of nkProcDef, nkFuncDef, nkMethodDef, nkConverterDef: var s = n[namePos].sym @@ -2559,7 +2562,7 @@ proc gen(p: PProc, n: PNode, r: var TCompRes) = genSym(p, n[namePos], r) r.res = nil of nkGotoState, nkState: - internalError(p.config, n.info, "first class iterators not implemented") + globalError(p.config, n.info, "First class iterators not implemented") of nkPragmaBlock: gen(p, n.lastSon, r) of nkComesFrom: discard "XXX to implement for better stack traces" |