metagn 2f547afb0f import brackets support `as` and prefixes [backport] (#21636) 1 rok pred
..
ic a37a83cbff fixes #21617; createTypeBoundOps with PContext in order to instantiate generics (#21619) 1 rok pred
nimfix 4c46358db1 remove shallowCopy for ARC/ORC (#20070) 2 rokov pred
plugins 25c6491b65 fixes #20162; locals doesn't work with ORC [backport] (#20163) 2 rokov pred
aliasanalysis.nim 3d692d08f7 fixes a long-standing ARC bug (#20849) 2 rokov pred
aliases.nim 088487f652 Implement Markdown definition lists (+ migration) (#20333) 2 rokov pred
ast.nim c814c4d993 fixes #3770; templates with untyped parameters resolve private fields wrongly in generics (#21554) 1 rok pred
astalgo.nim f7c203fb6c remove legacy code (#21134) 2 rokov pred
astmsgs.nim b24812df5f properly fix #10053 ; `FieldDefect` msg now shows discriminant value + lineinfo, in all backends (c,vm,js) (#11955) 3 rokov pred
backendpragmas.nim 38f876dd48 fixes #19795; fixes #11852; fixes #19974; remove parsing pipeline, Nim now parses the whole module at one time (#21379) 1 rok pred
bitsets.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
btrees.nim 4c46358db1 remove shallowCopy for ARC/ORC (#20070) 2 rokov pred
ccgcalls.nim 6552a27ec1 fixes #19857; Exception raised in closure may be "skipped" in ORC (#21530) 1 rok pred
ccgexprs.nim 1ed54b7718 fixes #21632; enforce deref for `wasMoved` in ORC (#21647) 1 rok pred
ccgliterals.nim de4b0346bd store full definition AST for consts, fix noRewrite (#20115) 2 rokov pred
ccgmerge_unused.nim a7133e0594 removed unused sections in codegen (#20976) 2 rokov pred
ccgreset.nim ca1f3f36b9 no ropes WIP (#20433) 2 rokov pred
ccgstmts.nim b0a98cc01e warn on set types bigger than max size, default to 0..255 for int literals (#21659) 1 rok pred
ccgthreadvars.nim ca1f3f36b9 no ropes WIP (#20433) 2 rokov pred
ccgtrav.nim ca1f3f36b9 no ropes WIP (#20433) 2 rokov pred
ccgtypes.nim 7d83dfd0d1 fixes #21505 (overload resolution of explicit constructors for imported C++ types) (#21511) 1 rok pred
ccgutils.nim 93b59da490 fixes #20244; fixes castSizes warnings (#21102) 2 rokov pred
cgen.nim 1ed54b7718 fixes #21632; enforce deref for `wasMoved` in ORC (#21647) 1 rok pred
cgendata.nim 38f876dd48 fixes #19795; fixes #11852; fixes #19974; remove parsing pipeline, Nim now parses the whole module at one time (#21379) 1 rok pred
cgmeth.nim a37a83cbff fixes #21617; createTypeBoundOps with PContext in order to instantiate generics (#21619) 1 rok pred
closureiters.nim a0653ae71a fix closure iter state table init type [backport] (#20717) 2 rokov pred
cmdlinehelper.nim 7b09fd70ab undefine C symbols in JS backend [backport:1.6] (#19437) 2 rokov pred
commands.nim b0a98cc01e warn on set types bigger than max size, default to 0..255 for int literals (#21659) 1 rok pred
concepts.nim cc08a9015e fixes #21263; consider all candidates for concept matches (#21265) 1 rok pred
condsyms.nim 8e53fba083 replaces `pairs` with `keys` and `items`; saves 8 bytes (#21319) 1 rok pred
debuginfo.nim 9c47bb9cc0 happy new year 8 rokov pred
debugutils.nim 6f4bacff67 Extend and document compiler debugging utilities (#19841) 2 rokov pred
depends.nim d950e5f3a8 remove nosinks hacks from compiler (#21469) 1 rok pred
dfa.nim 81087c949f fixes #20572 (#20585) 2 rokov pred
docgen.nim 2621f78b68 compiler/docgen: pass --path:… to runnableExamples (#21669) 1 rok pred
docgen2.nim d51a392149 replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 1 rok pred
enumtostr.nim 08ae3467b9 refactorings (#20536) 2 rokov pred
errorhandling.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
evalffi.nim a9bd78d579 fix #12122 (#21096) 2 rokov pred
evaltempl.nim 2cca38d33c pragma for sfCallsite instead of name check + better semantics, test (#20464) 2 rokov pred
extccomp.nim 7dc80a7fef Mitigate issues related to compiler options when cross-compiling (#21330) 1 rok pred
filter_tmpl.nim 8bdb985395 fix wrong name (rnimsyn => renderer; pnimsyn => parser; scanner => lexer) (#18895) 3 rokov pred
filters.nim 7e747d11c6 Cosmetic compiler cleanup (#12718) 5 rokov pred
gorgeimpl.nim fa60378a7f Return error message in output of gorge/staticExec. (#18942) 2 rokov pred
guards.nim 0faae4d5e2 fixes a strict case object problem that has been reported on the forum (#20614) 2 rokov pred
hlo.nim 81087c949f fixes #20572 (#20585) 2 rokov pred
idents.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
importer.nim 2f547afb0f import brackets support `as` and prefixes [backport] (#21636) 1 rok pred
index.nim 3cf88c2b49 walkDirRecFilter, update doc CI filter, compiler/index.nim for docs + various other fixes (#14501) 4 rokov pred
injectdestructors.nim 115cec1745 fixes #20993 [backport:1.6] (#21574) 1 rok pred
installer.ini b2c5f8a05f fixes #21461 (#21463) 1 rok pred
int128.nim 8a19ac2070 fixes #21393 and misc style changes (#21419) 1 rok pred
isolation_check.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
jsgen.nim f05387045d int64/uint64 as bigint in JS (#21613) 1 rok pred
jstypes.nim 4ae598762e fixes #21439; Add tyOpenArray to genTypeInfo. (#21440) 1 rok pred
lambdalifting.nim 9afb466d73 Force lambda lifting for getImplTransformed. Hacky. Fixes #19818 (#21031) 1 rok pred
layouter.nim a15872ba9e refactor strongSpaceB with an enum (#20809) 2 rokov pred
lexer.nim 7031ea65cd Implemented basic macro expand functionality (#20579) 1 rok pred
liftdestructors.nim 46d2161c23 minor refactoring (#21499) 1 rok pred
liftlocals.nim 2f213db7ee fixes #11225; generic sandwich problems; [backport:1.2] (#17255) 3 rokov pred
lineinfos.nim b0a98cc01e warn on set types bigger than max size, default to 0..255 for int literals (#21659) 1 rok pred
linter.nim 70c25c45d6 fixes #20397; fixes stylecheck regression (#20398) 2 rokov pred
llstream.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
lookups.nim ecf9efa397 document general use of `_`, error message, fixes (#21584) 1 rok pred
lowerings.nim b0a98cc01e warn on set types bigger than max size, default to 0..255 for int literals (#21659) 1 rok pred
macrocacheimpl.nim cf6dd57efe IC: next steps (#16632) 4 rokov pred
magicsys.nim 7e94420847 cString => cSourceString; tyCString => tyCstring so that error msgs show cstring, not cString (#17744) 3 rokov pred
main.nim 8e9fc5e639 a better message if graphviz's dot/nodejs is not found in PATH (#21488) 1 rok pred
modulegraphs.nim d51a392149 replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 1 rok pred
modulepaths.nim d30c6419a0 Refactor and doc package handling, module name mangling (#19821) 2 rokov pred
modules.nim d51a392149 replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 1 rok pred
msgs.nim 70fe360456 Use `ErrorColor` when a warning that is turned into an error is raised (#21131) 2 rokov pred
ndi.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
nilcheck.nim 81087c949f fixes #20572 (#20585) 2 rokov pred
nim.cfg 512517c223 fixes #18146; fixes #19372; disable tlsEmulation on windows; static link pthreads with mingw (#21668) 1 rok pred
nim.nim 7c6dcfd968 Implicitly set noNimblePath when nimble.lock is present (#21266) 1 rok pred
nimblecmd.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
nimconf.nim 82319ef00d fix #8219; nim check/dump shouldn't run single nimscript project [backport: 1.6] (#19641) 2 rokov pred
nimeval.nim d51a392149 replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 1 rok pred
nimlexbase.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
nimpaths.nim 088487f652 Implement Markdown definition lists (+ migration) (#20333) 2 rokov pred
nimsets.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
nodejs.nim 8e9fc5e639 a better message if graphviz's dot/nodejs is not found in PATH (#21488) 1 rok pred
nversion.nim b0a98cc01e warn on set types bigger than max size, default to 0..255 for int literals (#21659) 1 rok pred
optimizer.nim a137e50150 fixes #19291; implements `wasMoved` hook (#21303) 1 rok pred
options.nim f05387045d int64/uint64 as bigint in JS (#21613) 1 rok pred
packagehandling.nim d30c6419a0 Refactor and doc package handling, module name mangling (#19821) 2 rokov pred
packages.nim e8ae2dc90b bootstrap the compiler with nimPreviewSlimSystem (#20176) 2 rokov pred
parampatterns.nim 8d47bf1822 new move analyser2 (#20471) 2 rokov pred
parser.nim 2a0d8a9a06 make grammar a bit more honest (#21655) 1 rok pred
passaux.nim b8dc58d884 test removing dollar for objects out of system (#20242) 2 rokov pred
passes.nim d950e5f3a8 remove nosinks hacks from compiler (#21469) 1 rok pred
pathutils.nim 38d299dfc0 fixes #20139; hash types based on its path relative to its package path (#21274) [backport:1.6] 1 rok pred
patterns.nim 81087c949f fixes #20572 (#20585) 2 rokov pred
pipelines.nim a37a83cbff fixes #21617; createTypeBoundOps with PContext in order to instantiate generics (#21619) 1 rok pred
pipelineutils.nim d51a392149 replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 1 rok pred
platform.nim 3b9e9fd7b2 Add support for NuttX RTOS. (#21372) 1 rok pred
pluginsupport.nim a325692fb2 refactoring: fewer global variables 6 rokov pred
pragmas.nim 1af21c2668 change compile pragma to use mangled compile objects (#21678) 1 rok pred
prefixmatches.nim 57bd64582c move tests under the compiler directory to testament (#16096) 4 rokov pred
procfind.nim 4b9eea2fcc Fix forward declarations in shadow scope contexts (#15386) 4 rokov pred
readme.md 14f76f721d refactor: renamed readme to readme.md (#14283) 4 rokov pred
renderer.nim ff8ab06720 fixes #19396; Nimdoc hide nonexported fields (#21305) 1 rok pred
renderverbatim.nim e8ae2dc90b bootstrap the compiler with nimPreviewSlimSystem (#20176) 2 rokov pred
reorder.nim 5b20f0685c fixes pragmas reorder (#21205) 2 rokov pred
rodutils.nim b6bfe38ff5 move formatfloat out of system (#20195) 2 rokov pred
ropes.nim 081dfea746 Fix "imported but not used" warnings (#20575) 2 rokov pred
saturate.nim 6a621b35e7 fix warnings for deprecated `low` and `high` (#15291) 4 rokov pred
scriptconfig.nim d51a392149 replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 1 rok pred
sem.nim c814c4d993 fixes #3770; templates with untyped parameters resolve private fields wrongly in generics (#21554) 1 rok pred
semcall.nim 72ca444122 hopefully easier to understand error message (#21585) 1 rok pred
semdata.nim fc35f83eee fixes #21260; add check for illegal recursion for defaults (#21270) 1 rok pred
semexprs.nim b0a98cc01e warn on set types bigger than max size, default to 0..255 for int literals (#21659) 1 rok pred
semfields.nim ef29987781 An unnamed break in a block now gives an `UnnamedBreak` warning (#20901) 2 rokov pred
semfold.nim 8e53fba083 replaces `pairs` with `keys` and `items`; saves 8 bytes (#21319) 1 rok pred
semgnrc.nim c814c4d993 fixes #3770; templates with untyped parameters resolve private fields wrongly in generics (#21554) 1 rok pred
seminst.nim 64a0355f3f fixes #21377; fixes `@[]` and `{}` type inference as returns in generics (#21475) 1 rok pred
semmacrosanity.nim da0a2fdca2 Unpack mSlice tupleconstr for static openarrays (#20615) 2 rokov pred
semmagic.nim 91e4381a20 fixes #20155; repr range with distinct types is broken in ORC (#21682) 1 rok pred
semobjconstr.nim 16f42084d3 fixes #20900; Calling template through from generic function across module fails to build (#21649) 1 rok pred
semparallel.nim 3d5edb41be fixes #20958; fixes the return type of slice function [backport] (#20959) 2 rokov pred
sempass2.nim 16bc546aea remove useVersion (#21626) 1 rok pred
semstmts.nim 3f51b6f73d set module symbol type to None instead of nil for discard check (#21657) 1 rok pred
semstrictfuncs.nim 3812d91390 alternative, much simpler algorithm for strict func checking (#21066) 2 rokov pred
semtempl.nim 05c6db6500 underscores for routine parameters (#21192) 1 rok pred
semtypes.nim b0a98cc01e warn on set types bigger than max size, default to 0..255 for int literals (#21659) 1 rok pred
semtypinst.nim c06623bf8c Fix segfault caused by ensuring valueless statics are not evaluated (#21577) 1 rok pred
sighashes.nim 4d683fc689 fixes booting warnings (#21583) 1 rok pred
sigmatch.nim 9dc1f2dd0f actually fix #19015 (#21680) 1 rok pred
sinkparameter_inference.nim 2ebd71bfd4 tiny refactoring related to sink parameter inference logic (#21064) 2 rokov pred
sizealignoffsetimpl.nim b57a9637e8 fixes #20914; fixes the alignment of big sets (#20918) 2 rokov pred
sourcemap.nim 89a60939f8 Fix typo in sourcemap.nim (#21438) 1 rok pred
spawn.nim 83dabb69ae Fix bug in freshVarForClosureIter. Fixes #18474 (#19675) [backport] 2 rokov pred
suggest.nim b0a98cc01e warn on set types bigger than max size, default to 0..255 for int literals (#21659) 1 rok pred
syntaxes.nim 42ac50e988 fixes #19662; Indent level errored for first line (#19718) 2 rokov pred
tccgen.nim e8657c7107 make implicit cstring conversions explicit (#19488) 2 rokov pred
transf.nim f2dad94902 fixes #21306; fixes #20485; don't transform yields in the var section when introducing new local vars [backport: 1.6] (#21489) 1 rok pred
trees.nim 2e4b6b94e6 Revert "fix #16185 (#16195)" (#16197) 4 rokov pred
treetab.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
typeallowed.nim 65223e6f59 fixes #21674; `lent` can be used in the fields or the cast type as a parameter (#21684) 1 rok pred
types.nim 4d683fc689 fixes booting warnings (#21583) 1 rok pred
typesrenderer.nim 1bb117cd7a `proc` typeclass accounts for `iterator`, call conventions + `nil` fix + document typeclass AST (#21629) 1 rok pred
varpartitions.nim 81087c949f fixes #20572 (#20585) 2 rokov pred
vm.nim d950e5f3a8 remove nosinks hacks from compiler (#21469) 1 rok pred
vmconv.nim 07be1791ba fix #21045; getTime with vmopsDanger is broken; alternative to #21054 (#21056) 2 rokov pred
vmdef.nim 4647c7b596 fixes #14409; fixes #10674 VM callbacks switch to table-index seqs (#21297) 1 rok pred
vmdeps.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
vmgen.nim b0a98cc01e warn on set types bigger than max size, default to 0..255 for int literals (#21659) 1 rok pred
vmhooks.nim 7f6e800caf move assertions out of system (#19599) 2 rokov pred
vmmarshal.nim b6bfe38ff5 move formatfloat out of system (#20195) 2 rokov pred
vmops.nim 4d683fc689 fixes booting warnings (#21583) 1 rok pred
vmprofiler.nim f92d2eaa35 cleanup of PR #14833 (VM profiler) 4 rokov pred
wordrecg.nim 4459c272ec remove `enumUtilsExist` defines (#21309) 1 rok pred

readme.md

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.