Nim/compiler
ringabout fe8feb46c6
fixes #19457 seqs are not properly updated in loop with ARC/ORC (#19922)
* test CI

* fixes #19457

* add comments

Co-authored-by: sandytypical <43030857+xflywind@users.noreply.github.com>
2022-09-28 13:12:08 +02:00
..
ic no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
nimfix remove shallowCopy for ARC/ORC (#20070) 2022-07-26 16:51:01 +02:00
plugins fixes #20162; locals doesn't work with ORC [backport] (#20163) 2022-08-23 09:00:23 +02:00
aliases.nim Implement Markdown definition lists (+ migration) (#20333) 2022-09-11 13:52:43 -04:00
ast.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
astalgo.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
astmsgs.nim properly fix #10053 ; FieldDefect msg now shows discriminant value + lineinfo, in all backends (c,vm,js) (#11955) 2021-08-13 09:35:48 +02:00
bitsets.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
btrees.nim remove shallowCopy for ARC/ORC (#20070) 2022-07-26 16:51:01 +02:00
ccgcalls.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
ccgexprs.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
ccgliterals.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
ccgmerge_unused.nim IC: green tests (#17311) 2021-03-19 16:53:38 +01:00
ccgreset.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
ccgstmts.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
ccgthreadvars.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
ccgtrav.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
ccgtypes.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
ccgutils.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
cgen.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
cgendata.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
cgmeth.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
closureiters.nim Fixed compilation of void closureiters with try stmt (#20138) [backport] 2022-08-03 08:46:36 +02:00
cmdlinehelper.nim undefine C symbols in JS backend [backport:1.6] (#19437) 2022-02-04 17:10:24 -05:00
commands.nim fixes #20426; remove maincommand and m options since they are a no op since 2014 (#20429) 2022-09-26 15:40:20 -04:00
concepts.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
condsyms.nim turn nimIncrSeqV3 into deadcode (#20388) 2022-09-20 14:59:50 +02:00
debuginfo.nim happy new year 2017-01-07 22:35:09 +01:00
debugutils.nim Extend and document compiler debugging utilities (#19841) 2022-06-10 20:40:08 +02:00
depends.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
dfa.nim support cstring in case (#20130) 2022-09-01 18:10:00 +02:00
docgen.nim fixes #9462; jsondoc --index can generate a theindex.json (#20205) 2022-09-06 21:23:33 +02:00
docgen2.nim Fix auto links to subheader when TOC is present (#20279) 2022-08-27 17:28:26 -04:00
enumtostr.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
errorhandling.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
evalffi.nim make implicit cstring conversions explicit (#19488) 2022-08-19 15:40:53 -04:00
evaltempl.nim fix #16993, #18054, #17835 runnableExamples now works with templates and nested templates (#18082) 2021-06-02 09:02:14 -07:00
extccomp.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
filter_tmpl.nim fix wrong name (rnimsyn => renderer; pnimsyn => parser; scanner => lexer) (#18895) 2021-09-25 13:22:00 +02:00
filters.nim Cosmetic compiler cleanup (#12718) 2019-11-28 17:13:04 +01:00
gorgeimpl.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
guards.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
hlo.nim document compiler procs regarding & (#20257) 2022-08-22 04:11:43 -04:00
idents.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
importer.nim fix #18986; Import/except doesn't work on devel [backport: 1.6] (#19687) 2022-04-06 16:17:09 +02:00
index.nim walkDirRecFilter, update doc CI filter, compiler/index.nim for docs + various other fixes (#14501) 2020-06-01 19:21:41 +02:00
injectdestructors.nim fixes #20303; wasMoved expressions with side effects for ORC (#20307) [backport] 2022-09-08 08:07:28 +02:00
installer.ini fixes nightlies build regression (#20322) 2022-09-08 22:30:03 +02:00
int128.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
isolation_check.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
jsgen.nim allow more simple expressions in js (#20270) 2022-09-27 12:47:45 +02:00
jstypes.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
lambdalifting.nim Friendlier error message with solution (#19880) 2022-06-11 18:23:31 +02:00
layouter.nim fix #12155, improve nimpretty's handling of pragmas (#17353) 2021-03-12 15:34:42 +01:00
lexer.nim use arrow precedence in spec (#20166) 2022-09-06 21:24:32 +02:00
liftdestructors.nim Prevent use-after-free bugs in object variants. Fixes bug #20305 (#20300) [backport] 2022-09-05 08:26:02 +02:00
liftlocals.nim fixes #11225; generic sandwich problems; [backport:1.2] (#17255) 2021-03-09 20:19:24 +01:00
lineinfos.nim new .redefine pragma for templates, warn on redefinition without it (#20211) 2022-08-23 21:41:30 +02:00
linter.nim fixes #20397; fixes stylecheck regression (#20398) 2022-09-21 15:04:33 -04:00
llstream.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
lookups.nim overloadable enums no longer experimental (#20298) 2022-09-05 23:38:38 +02:00
lowerings.nim Fixed noinit pragma for closure variables (#20101) 2022-07-28 18:43:41 +08:00
macrocacheimpl.nim IC: next steps (#16632) 2021-01-12 09:36:51 +01:00
magicsys.nim cString => cSourceString; tyCString => tyCstring so that error msgs show cstring, not cString (#17744) 2021-04-17 11:14:09 +02:00
main.nim fixes #9462; jsondoc --index can generate a theindex.json (#20205) 2022-09-06 21:23:33 +02:00
md5_old.nim Use openarray of bytes in md5 (#19307) 2022-01-15 13:19:05 +01:00
modulegraphs.nim [nimsuggest] fix def call on identifier 2 times on the line (#20228) 2022-08-30 21:02:15 +02:00
modulepaths.nim Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
modules.nim Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
msgs.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
ndi.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
nilcheck.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
nim.cfg continue booting the compiler with refc (#20421) 2022-09-24 20:14:01 +08:00
nim.nim defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
nimblecmd.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
nimconf.nim fix #8219; nim check/dump shouldn't run single nimscript project [backport: 1.6] (#19641) 2022-03-26 11:50:15 +01:00
nimeval.nim Added setGlobalValue to VM api (#19007) 2021-10-17 16:24:43 +02:00
nimlexbase.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
nimpaths.nim Implement Markdown definition lists (+ migration) (#20333) 2022-09-11 13:52:43 -04:00
nimsets.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
nodejs.nim Improve error message when NodeJS is not installed and 'nim js -r' is run (#18978) 2021-10-12 15:41:30 +02:00
nversion.nim Fix spellings (#12277) [backport] 2019-09-27 07:02:54 +02:00
optimizer.nim support cstring in case (#20130) 2022-09-01 18:10:00 +02:00
options.nim defaults to ORC (#19972) 2022-09-23 13:05:05 +02:00
packagehandling.nim Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
packages.nim bootstrap the compiler with nimPreviewSlimSystem (#20176) 2022-08-09 16:32:29 +08:00
parampatterns.nim apply changes from #18017 and some fixes (#19571) 2022-03-01 07:46:08 +01:00
parser.nim remove deprecated type pragma syntax, fix bugs that required it (#20199) 2022-09-03 09:52:13 +02:00
passaux.nim test removing dollar for objects out of system (#20242) 2022-08-24 09:44:16 +02:00
passes.nim Initial implementation of nimsuggest v3 (#19826) 2022-06-13 11:33:44 +02:00
pathutils.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
patterns.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
platform.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
pluginsupport.nim refactoring: fewer global variables 2018-05-27 19:19:12 +02:00
pragmas.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
prefixmatches.nim move tests under the compiler directory to testament (#16096) 2020-11-25 07:48:27 +01:00
procfind.nim Fix forward declarations in shadow scope contexts (#15386) 2020-09-22 18:24:13 +02:00
readme.md refactor: renamed readme to readme.md (#14283) 2020-05-11 13:50:40 +02:00
renderer.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
renderverbatim.nim bootstrap the compiler with nimPreviewSlimSystem (#20176) 2022-08-09 16:32:29 +08:00
reorder.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
rodutils.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
ropes.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
saturate.nim fix warnings for deprecated low and high (#15291) 2020-09-11 01:04:07 +02:00
scriptconfig.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
sem.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
semcall.nim remove {.this.} pragma, deprecated since 0.19 (#20201) 2022-08-23 19:44:37 +02:00
semdata.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +02:00
semexprs.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
semfields.nim IC: next steps (#16550) 2021-01-07 20:26:40 +01:00
semfold.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
semgnrc.nim overloadable enums no longer experimental (#20298) 2022-09-05 23:38:38 +02:00
seminst.nim fix #19882 Improve error message when instantiating generics that lac… (#20356) 2022-09-19 18:31:40 -04:00
semmacrosanity.nim cString => cSourceString; tyCString => tyCstring so that error msgs show cstring, not cString (#17744) 2021-04-17 11:14:09 +02:00
semmagic.nim fixes #19401; fixes #19402; rework Forward declaration and finalizer for ORC (#20295) 2022-09-27 20:07:26 +02:00
semobjconstr.nim Improve error message when instantiating generics with object constructor (#20358) 2022-09-21 21:11:39 -04:00
semparallel.nim minor typos (#17668) 2021-04-07 19:54:28 +02:00
sempass2.nim fixes #19724; don't be aggressive when you infer sink parameters (#20314) 2022-09-12 00:58:29 +02:00
semstmts.nim Fixes #20348; only respect the recursion limit if the symbol's generic type has been generated by the compiler (#20377) 2022-09-22 14:19:36 -04:00
semtempl.nim fix #13515 [backport] (#20315) 2022-09-11 08:33:24 +02:00
semtypes.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
semtypinst.nim Fixes #20348; only respect the recursion limit if the symbol's generic type has been generated by the compiler (#20377) 2022-09-22 14:19:36 -04:00
sighashes.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
sigmatch.nim Markdown code blocks part 6 (#20292) 2022-08-31 19:39:02 -04:00
sinkparameter_inference.nim big steps torwards an efficient, simple IC implementation (#16543) 2021-01-02 07:30:39 +01:00
sizealignoffsetimpl.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +02:00
sourcemap.nim cString => cSourceString; tyCString => tyCstring so that error msgs show cstring, not cString (#17744) 2021-04-17 11:14:09 +02:00
spawn.nim Fix bug in freshVarForClosureIter. Fixes #18474 (#19675) [backport] 2022-04-04 12:05:23 +02:00
strutils2.nim Correct all eggs (#15906) 2020-11-10 21:53:25 +01:00
suggest.nim [nimsuggest] fix def call on identifier 2 times on the line (#20228) 2022-08-30 21:02:15 +02:00
syntaxes.nim fixes #19662; Indent level errored for first line (#19718) 2022-04-25 12:00:23 +02:00
tccgen.nim make implicit cstring conversions explicit (#19488) 2022-08-19 15:40:53 -04:00
transf.nim document compiler procs regarding & (#20257) 2022-08-22 04:11:43 -04:00
trees.nim Revert "fix #16185 (#16195)" (#16197) 2020-11-30 23:36:38 +01:00
treetab.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
typeallowed.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
types.nim fix #2614 improve error message when array of proc calling convention… (#20379) 2022-09-26 11:58:13 +02:00
typesrenderer.nim bootstrap the compiler with nimPreviewSlimSystem (#20176) 2022-08-09 16:32:29 +08:00
varpartitions.nim fixes #19457 seqs are not properly updated in loop with ARC/ORC (#19922) 2022-09-28 13:12:08 +02:00
vm.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
vmconv.nim make system random work in VM (#17059) 2021-02-17 11:52:46 +01:00
vmdef.nim [vm] remove unused opcSubstr opcode (#19834) 2022-05-30 10:41:24 +02:00
vmdeps.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
vmgen.nim Markdown code blocks part 6 (#20292) 2022-08-31 19:39:02 -04:00
vmhooks.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
vmmarshal.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
vmops.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
vmprofiler.nim cleanup of PR #14833 (VM profiler) 2020-07-09 19:21:20 +02:00
wordrecg.nim new .redefine pragma for templates, warn on redefinition without it (#20211) 2022-08-23 21:41:30 +02:00

Nim Compiler

  • This directory contains the Nim compiler written in Nim.
  • Note that this code has been translated from a bootstrapping version written in Pascal.
  • So the code is not a poster child of good Nim code.

See Internals of the Nim Compiler for more information.