Nim/compiler
2023-03-12 20:03:46 +01:00
..
ic IC: fix typo in rodfiles.nim (#20989) 2022-12-01 14:26:59 -05: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
aliasanalysis.nim fixes a long-standing ARC bug (#20849) 2022-11-16 07:36:14 +01:00
aliases.nim Implement Markdown definition lists (+ migration) (#20333) 2022-09-11 13:52:43 -04:00
ast.nim fixes #19291; implements wasMoved hook (#21303) 2023-03-02 05:29:40 +01:00
astalgo.nim remove legacy code (#21134) 2022-12-26 13:20:05 +01: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
backendpragmas.nim fixes #19795; fixes #11852; fixes #19974; remove parsing pipeline, Nim now parses the whole module at one time (#21379) 2023-02-22 20:34:20 +01: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 fixes #20422; emit nimPrepareStrMutationV2 for toOpenArray to keep th… (#21459) 2023-03-02 08:36:02 +01:00
ccgexprs.nim fixes #20139; hash types based on its path relative to its package path (#21274) [backport:1.6] 2023-03-02 09:16:28 +01:00
ccgliterals.nim store full definition AST for consts, fix noRewrite (#20115) 2022-09-28 15:05:01 +02:00
ccgmerge_unused.nim removed unused sections in codegen (#20976) 2022-11-30 21:51:13 +01:00
ccgreset.nim no ropes WIP (#20433) 2022-09-27 10:57:47 +02:00
ccgstmts.nim fixes #20139; hash types based on its path relative to its package path (#21274) [backport:1.6] 2023-03-02 09:16:28 +01: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 fixes #20139; hash types based on its path relative to its package path (#21274) [backport:1.6] 2023-03-02 09:16:28 +01:00
ccgutils.nim fixes #20244; fixes castSizes warnings (#21102) 2022-12-22 08:27:11 +01:00
cgen.nim Add line directives for C code variables (#21466) 2023-03-05 20:14:59 +01:00
cgendata.nim fixes #19795; fixes #11852; fixes #19974; remove parsing pipeline, Nim now parses the whole module at one time (#21379) 2023-02-22 20:34:20 +01:00
cgmeth.nim fix dispatcher call type [backport] (#20696) 2022-10-29 18:12:19 +02:00
closureiters.nim fix closure iter state table init type [backport] (#20717) 2022-10-31 18:41:48 +01:00
cmdlinehelper.nim undefine C symbols in JS backend [backport:1.6] (#19437) 2022-02-04 17:10:24 -05:00
commands.nim fixes #19396; Nimdoc hide nonexported fields (#21305) 2023-02-01 08:13:40 +01:00
concepts.nim fixes #21263; consider all candidates for concept matches (#21265) 2023-01-17 23:15:23 +01:00
condsyms.nim replaces pairs with keys and items; saves 8 bytes (#21319) 2023-02-02 13:11:20 -05: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 remove nosinks hacks from compiler (#21469) 2023-03-04 20:07:33 +08:00
dfa.nim fixes #20572 (#20585) 2022-10-17 23:48:51 +02:00
docgen.nim fixes #19396; Nimdoc hide nonexported fields (#21305) 2023-02-01 08:13:40 +01:00
docgen2.nim replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 2023-03-03 07:36:38 +01:00
enumtostr.nim refactorings (#20536) 2022-10-10 21:40:07 +02:00
errorhandling.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
evalffi.nim fix #12122 (#21096) 2022-12-16 08:01:15 +01:00
evaltempl.nim pragma for sfCallsite instead of name check + better semantics, test (#20464) 2022-10-03 06:07:55 +02:00
extccomp.nim Mitigate issues related to compiler options when cross-compiling (#21330) 2023-02-22 21:10:02 +01: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 Return error message in output of gorge/staticExec. (#18942) 2022-10-12 18:52:22 +02:00
guards.nim fixes a strict case object problem that has been reported on the forum (#20614) 2022-10-21 22:46:32 +02:00
hlo.nim fixes #20572 (#20585) 2022-10-17 23:48:51 +02: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 #20139; hash types based on its path relative to its package path (#21274) [backport:1.6] 2023-03-02 09:16:28 +01:00
installer.ini fixes #21461 (#21463) 2023-03-03 23:37:12 +01:00
int128.nim fixes #21393 and misc style changes (#21419) 2023-02-24 09:02:15 +01:00
isolation_check.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
jsgen.nim --embedsrc for JavaScript (#21467) 2023-03-04 07:57:30 +01:00
jstypes.nim fixes #21439; Add tyOpenArray to genTypeInfo. (#21440) 2023-02-27 00:56:43 +01:00
lambdalifting.nim Force lambda lifting for getImplTransformed. Hacky. Fixes #19818 (#21031) 2023-01-19 11:46:41 +01:00
layouter.nim refactor strongSpaceB with an enum (#20809) 2022-11-10 16:21:52 +01:00
lexer.nim Implemented basic macro expand functionality (#20579) 2023-01-27 07:11:30 +01:00
liftdestructors.nim minor refactoring (#21499) 2023-03-10 14:20:30 +01:00
liftlocals.nim fixes #11225; generic sandwich problems; [backport:1.2] (#17255) 2021-03-09 20:19:24 +01:00
lineinfos.nim docgen: implement cross-document links (#20990) 2023-01-04 15:19:01 -05: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 fixes #21496; Ambiguous calls compiles when module name are equal (#21500) 2023-03-12 20:03:14 +01: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 a better message if graphviz's dot/nodejs is not found in PATH (#21488) 2023-03-08 22:34:59 +01:00
modulegraphs.nim replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 2023-03-03 07:36:38 +01:00
modulepaths.nim Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
modules.nim replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 2023-03-03 07:36:38 +01:00
msgs.nim Use ErrorColor when a warning that is turned into an error is raised (#21131) 2022-12-22 08:25:24 +01:00
ndi.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
nilcheck.nim fixes #20572 (#20585) 2022-10-17 23:48:51 +02:00
nim.cfg fixes #20244; fixes castSizes warnings (#21102) 2022-12-22 08:27:11 +01:00
nim.nim Implicitly set noNimblePath when nimble.lock is present (#21266) 2023-01-18 21:38:48 +01: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 replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 2023-03-03 07:36:38 +01: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 a better message if graphviz's dot/nodejs is not found in PATH (#21488) 2023-03-08 22:34:59 +01:00
nversion.nim Fix spellings (#12277) [backport] 2019-09-27 07:02:54 +02:00
optimizer.nim fixes #19291; implements wasMoved hook (#21303) 2023-03-02 05:29:40 +01:00
options.nim Add support for NuttX RTOS. (#21372) 2023-02-16 13:47:52 +01: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 new move analyser2 (#20471) 2022-10-01 16:46:51 +02:00
parser.nim allow omitting stmts using finally as post expr blocks; make it consistent with else, except etc. (#21361) 2023-02-14 07:29:30 +01:00
passaux.nim test removing dollar for objects out of system (#20242) 2022-08-24 09:44:16 +02:00
passes.nim remove nosinks hacks from compiler (#21469) 2023-03-04 20:07:33 +08:00
pathutils.nim fixes #20139; hash types based on its path relative to its package path (#21274) [backport:1.6] 2023-03-02 09:16:28 +01:00
patterns.nim fixes #20572 (#20585) 2022-10-17 23:48:51 +02:00
pipelines.nim replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 2023-03-03 07:36:38 +01:00
pipelineutils.nim replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 2023-03-03 07:36:38 +01:00
platform.nim Add support for NuttX RTOS. (#21372) 2023-02-16 13:47:52 +01:00
pluginsupport.nim refactoring: fewer global variables 2018-05-27 19:19:12 +02:00
pragmas.nim fixes #19795; fixes #11852; fixes #19974; remove parsing pipeline, Nim now parses the whole module at one time (#21379) 2023-02-22 20:34:20 +01: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 fixes #19396; Nimdoc hide nonexported fields (#21305) 2023-02-01 08:13:40 +01:00
renderverbatim.nim bootstrap the compiler with nimPreviewSlimSystem (#20176) 2022-08-09 16:32:29 +08:00
reorder.nim fixes pragmas reorder (#21205) 2023-01-01 10:25:04 +01:00
rodutils.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
ropes.nim Fix "imported but not used" warnings (#20575) 2022-10-16 20:24:16 +02:00
saturate.nim fix warnings for deprecated low and high (#15291) 2020-09-11 01:04:07 +02:00
scriptconfig.nim replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 2023-03-03 07:36:38 +01:00
sem.nim remove nosinks hacks from compiler (#21469) 2023-03-04 20:07:33 +08:00
semcall.nim Fix #21272: Rewrite parts of pickBestCandidate (#21465) 2023-03-05 11:56:51 +01:00
semdata.nim fixes #21260; add check for illegal recursion for defaults (#21270) 2023-01-18 11:52:18 +01:00
semexprs.nim fixes quoted variables with typedesc types (#21493) 2023-03-09 08:09:08 +01:00
semfields.nim An unnamed break in a block now gives an UnnamedBreak warning (#20901) 2022-11-24 07:31:47 +01:00
semfold.nim replaces pairs with keys and items; saves 8 bytes (#21319) 2023-02-02 13:11:20 -05:00
semgnrc.nim fixes #20572 (#20585) 2022-10-17 23:48:51 +02:00
seminst.nim fixes #21377; fixes @[] and {} type inference as returns in generics (#21475) 2023-03-06 15:30:22 +01:00
semmacrosanity.nim Unpack mSlice tupleconstr for static openarrays (#20615) 2022-10-22 06:37:23 +02:00
semmagic.nim fixes #21377; fixes @[] and {} type inference as returns in generics (#21475) 2023-03-06 15:30:22 +01:00
semobjconstr.nim fixes #21023; Segfault when mixing seqs, orc, variants and futures (#21497) 2023-03-10 09:28:51 +01:00
semparallel.nim fixes #20958; fixes the return type of slice function [backport] (#20959) 2022-11-29 07:21:44 +01:00
sempass2.nim fixes #21393 and misc style changes (#21419) 2023-02-24 09:02:15 +01:00
semstmts.nim remove nosinks hacks from compiler (#21469) 2023-03-04 20:07:33 +08:00
semstrictfuncs.nim alternative, much simpler algorithm for strict func checking (#21066) 2022-12-11 16:58:50 +01:00
semtempl.nim underscores for routine parameters (#21192) 2023-01-08 06:49:49 +01:00
semtypes.nim fixes #20695; fixes object with distinct defaults and tables (#21428) 2023-02-24 09:02:44 +01:00
semtypinst.nim Fix #20416. Enable the recursion limit for ref/ptr types. (#21092) 2022-12-13 22:57:07 +08:00
sighashes.nim fixes #20139; hash types based on its path relative to its package path (#21274) [backport:1.6] 2023-03-02 09:16:28 +01:00
sigmatch.nim remove nosinks hacks from compiler (#21469) 2023-03-04 20:07:33 +08:00
sinkparameter_inference.nim tiny refactoring related to sink parameter inference logic (#21064) 2022-12-10 15:42:22 +01:00
sizealignoffsetimpl.nim fixes #20914; fixes the alignment of big sets (#20918) 2022-11-26 07:48:11 +01:00
sourcemap.nim Fix typo in sourcemap.nim (#21438) 2023-02-27 00:57:02 +01:00
spawn.nim Fix bug in freshVarForClosureIter. Fixes #18474 (#19675) [backport] 2022-04-04 12:05:23 +02:00
suggest.nim replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 2023-03-03 07:36:38 +01: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 fixes #21306; fixes #20485; don't transform yields in the var section when introducing new local vars [backport: 1.6] (#21489) 2023-03-10 14:19:31 +01: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 fix a few "broken link" warnings (#20837) 2022-11-14 15:43:29 +08:00
types.nim fix #19580; add warning for bare except: clause (#21099) 2022-12-15 06:45:36 +01:00
typesrenderer.nim bootstrap the compiler with nimPreviewSlimSystem (#20176) 2022-08-09 16:32:29 +08:00
varpartitions.nim fixes #20572 (#20585) 2022-10-17 23:48:51 +02:00
vm.nim remove nosinks hacks from compiler (#21469) 2023-03-04 20:07:33 +08:00
vmconv.nim fix #21045; getTime with vmopsDanger is broken; alternative to #21054 (#21056) 2022-12-10 18:57:19 +01:00
vmdef.nim fixes #14409; fixes #10674 VM callbacks switch to table-index seqs (#21297) 2023-01-26 23:49:04 +01:00
vmdeps.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
vmgen.nim fixes explicit globals in macros (#21502) 2023-03-12 20:03:46 +01: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 Add contains to std/macrocache (#21304) 2023-02-01 10:00:10 +01:00
vmprofiler.nim cleanup of PR #14833 (VM profiler) 2020-07-09 19:21:20 +02:00
wordrecg.nim remove enumUtilsExist defines (#21309) 2023-01-29 15:11:24 +01: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.