Error: internal error: (filename: "vmgen.nim", line: 1642, column: 22) No stack traceback available To create a stacktrace, rerun compilation with ./koch temp c <file>
Ouch. After recompiling the compiler as directed, I get
Error: internal error: (filename: "vmgen.nim", line: 1642, column: 22) Traceback (most recent call last) C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\nim.nim(118) nim C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\nim.nim(95) handleCmdLine C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\cmdlinehelper.nim(77) loadConfigsAndRunMainCommand C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\main.nim(190) mainCommand C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\main.nim(92) commandCompileToC C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\modules.nim(143) compileProject C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\modules.nim(84) compileModule C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\passes.nim(216) processModule C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\passes.nim(86) processTopLevelStmt C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\sem.nim(604) myProcess C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\sem.nim(572) semStmtAndGenerateGenerics C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semstmts.nim(2303) semStmt C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semexprs.nim(1006) semExprNoType C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semexprs.nim(2786) semExpr C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semstmts.nim(2082) semProc C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semstmts.nim(2001) semProcAux C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semexprs.nim(1764) semProcBody C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semexprs.nim(2768) semExpr C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semstmts.nim(2243) semStmtList C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semexprs.nim(2778) semExpr C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semstmts.nim(938) semFor C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semstmts.nim(818) semForVars C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semstmts.nim(104) semExprBranch C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semexprs.nim(2768) semExpr C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semstmts.nim(2243) semStmtList C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semexprs.nim(2772) semExpr C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\semstmts.nim(668) semConst C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\sem.nim(353) semConstExpr C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vm.nim(2192) evalConstExpr C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vm.nim(2180) evalConstExprAux C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(2159) genExpr C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(2035) gen C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(593) genCall C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(287) gen C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(2079) gen C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(292) gen C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(2024) gen C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(1186) genMagic C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(782) genBinaryStmtVar C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(299) genx C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\vmgen.nim(1992) gen C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\msgs.nim(570) genRdVar C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\msgs.nim(563) internalError C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\msgs.nim(441) rawMessage C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\msgs.nim(438) rawMessage C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\msgs.nim(356) handleError C:\Users\jqb\scoop\apps\nim\1.2.0\compiler\msgs.nim(346) quit FAILURE Anyone familiar with this, before I go trying to track down what in my code is triggering this?
Well, it took some sleuthing but I managed to find the code causing this and reduced it to this minimal case:
import regex, strformat
proc p =
for i in 1..1:
const rx = re(&r"")