ringabout 0b3ddd4e47 Revert "fixes #22246; generate `__builtin_unreachable` hints for case defaults" (#22351) 1 year ago
..
ic 7ee00d86b1 fixes overriden typo (#22044) 1 year ago
plugins 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
aliasanalysis.nim 3d692d08f7 fixes a long-standing ARC bug (#20849) 2 years ago
aliases.nim 088487f652 Implement Markdown definition lists (+ migration) (#20333) 2 years ago
ast.nim f0f3904ff0 implement `ensureMove` (#22339) 1 year ago
astalgo.nim f7c203fb6c remove legacy code (#21134) 2 years ago
astmsgs.nim b24812df5f properly fix #10053 ; `FieldDefect` msg now shows discriminant value + lineinfo, in all backends (c,vm,js) (#11955) 3 years ago
backendpragmas.nim 38f876dd48 fixes #19795; fixes #11852; fixes #19974; remove parsing pipeline, Nim now parses the whole module at one time (#21379) 2 years ago
bitsets.nim 7f6e800caf move assertions out of system (#19599) 3 years ago
btrees.nim 4533e894ad adds an experimental `mm:atomicArc` switch (#21798) 1 year ago
ccgcalls.nim 44f059c75e implements allow byref to work in params #21873 (#21875) 1 year ago
ccgexprs.nim f0f3904ff0 implement `ensureMove` (#22339) 1 year ago
ccgliterals.nim de4b0346bd store full definition AST for consts, fix noRewrite (#20115) 2 years ago
ccgmerge_unused.nim a7133e0594 removed unused sections in codegen (#20976) 2 years ago
ccgreset.nim ca1f3f36b9 no ropes WIP (#20433) 2 years ago
ccgstmts.nim 0b3ddd4e47 Revert "fixes #22246; generate `__builtin_unreachable` hints for case defaults" (#22351) 1 year ago
ccgthreadvars.nim ca1f3f36b9 no ropes WIP (#20433) 2 years ago
ccgtrav.nim ca1f3f36b9 no ropes WIP (#20433) 2 years ago
ccgtypes.nim e70992d291 fixes an issue where byref wasnt properly handled when using it in a generic param (#22337) 1 year ago
ccgutils.nim 5606702e6d implements: "Allow bycopy to work in params #21874" (#21877) 1 year ago
cgen.nim 8216d7dd46 fixes #22321; fixes building DLL with --noMain still produces a DllMain (#22323) 1 year ago
cgendata.nim be1844541c implemented 'push quirky' switch for fine grained control over the ex… (#22318) 1 year ago
cgmeth.nim 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
closureiters.nim b02c1dd6ca fixes #22297; return in the finally in the closure iterators (#22300) 1 year ago
cmdlinehelper.nim b2d7761975 Remove Deprecated Nimfix (#22062) 1 year ago
commands.nim 8216d7dd46 fixes #22321; fixes building DLL with --noMain still produces a DllMain (#22323) 1 year ago
compiler.nimble 2bb7277a61 Create compiler and nimsuggest packages (#22118) 1 year ago
concepts.nim 7616e6ee2b Fix concepts with doc comments (#22228) 1 year ago
condsyms.nim f0f3904ff0 implement `ensureMove` (#22339) 1 year ago
debuginfo.nim 9c47bb9cc0 happy new year 8 years ago
debugutils.nim 6f4bacff67 Extend and document compiler debugging utilities (#19841) 2 years ago
depends.nim 3b377937de gendepends now supports pkgs2 (#22277) 1 year ago
dfa.nim 427ad17161 fixes #22001 (#22177) 1 year ago
docgen.nim 576f4a7348 Fix doc comment rendering for concepts (#22312) 1 year ago
docgen2.nim 3f9e16594f fix `jsondoc` not getting `showNonExports` flag (#22267) 1 year ago
enumtostr.nim 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
errorhandling.nim 7f6e800caf move assertions out of system (#19599) 3 years ago
evalffi.nim a9bd78d579 fix #12122 (#21096) 2 years ago
evaltempl.nim 1dedad5620 make runnableExamples a special word (#22024) 1 year ago
extccomp.nim 0b3ddd4e47 Revert "fixes #22246; generate `__builtin_unreachable` hints for case defaults" (#22351) 1 year ago
filter_tmpl.nim 8bdb985395 fix wrong name (rnimsyn => renderer; pnimsyn => parser; scanner => lexer) (#18895) 3 years ago
filters.nim 7e747d11c6 Cosmetic compiler cleanup (#12718) 5 years ago
gorgeimpl.nim afc30ca879 fixes #19863; move sha1, md5 to nimble packages for 2.0 (#21702) 1 year ago
guards.nim 0faae4d5e2 fixes a strict case object problem that has been reported on the forum (#20614) 2 years ago
hlo.nim 81087c949f fixes #20572 (#20585) 2 years ago
idents.nim 7f6e800caf move assertions out of system (#19599) 3 years ago
importer.nim d9a24b9b81 fixes #22208; Ambiguous error when import modules with same names but… (#22211) 1 year ago
index.nim 3cf88c2b49 walkDirRecFilter, update doc CI filter, compiler/index.nim for docs + various other fixes (#14501) 4 years ago
injectdestructors.nim f0f3904ff0 implement `ensureMove` (#22339) 1 year ago
installer.ini 21d941c16a Atlas: now in its own repository (#22066) 1 year ago
int128.nim 8a19ac2070 fixes #21393 and misc style changes (#21419) 2 years ago
isolation_check.nim f4a9b258c3 isolation spec update; WIP (#21843) 1 year ago
jsgen.nim f0f3904ff0 implement `ensureMove` (#22339) 1 year ago
jstypes.nim 4ae598762e fixes #21439; Add tyOpenArray to genTypeInfo. (#21440) 2 years ago
lambdalifting.nim 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
layouter.nim ba698d37c3 some Token refactors (#21762) 1 year ago
lexer.nim 3a08e2e6ac Remove LineTooLong (#21819) 1 year ago
liftdestructors.nim 7d9fe106ec fixes #22268; fixes `move` codegen (#22288) 1 year ago
liftlocals.nim 2f213db7ee fixes #11225; generic sandwich problems; [backport:1.2] (#17255) 4 years ago
lineinfos.nim f0f3904ff0 implement `ensureMove` (#22339) 1 year ago
linter.nim 365a753eed Fix some `styleCheck` bugs (#20095) 1 year ago
llstream.nim 7f6e800caf move assertions out of system (#19599) 3 years ago
lookups.nim ac7b8b678c fixes #21231; template with module as parameter elides usage/checking of module name specifier (#22109) 1 year ago
lowerings.nim 7d9fe106ec fixes #22268; fixes `move` codegen (#22288) 1 year ago
macrocacheimpl.nim cf6dd57efe IC: next steps (#16632) 4 years ago
magicsys.nim 161f50643a make deprecated statement a no-op (#21836) 1 year ago
main.nim b2d7761975 Remove Deprecated Nimfix (#22062) 1 year ago
modulegraphs.nim e43a51fcf3 Implements: [C++] constructor pragma improvement (fix #21921) (#21916) 1 year ago
modulepaths.nim d30c6419a0 Refactor and doc package handling, module name mangling (#19821) 2 years ago
modules.nim d51a392149 replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 2 years ago
msgs.nim 2e987cb75a Tolerate markup errors for doc comments (#19607) (#22235) 1 year ago
ndi.nim 7f6e800caf move assertions out of system (#19599) 3 years ago
nilcheck.nim 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
nim.cfg d139d99946 fixes #19101; zero initialization union casts (#22185) 1 year ago
nim.nim 02be212dae clean up SOME pending/xxx/issue link comments (#21826) 1 year ago
nimblecmd.nim afc30ca879 fixes #19863; move sha1, md5 to nimble packages for 2.0 (#21702) 1 year ago
nimconf.nim 82319ef00d fix #8219; nim check/dump shouldn't run single nimscript project [backport: 1.6] (#19641) 3 years ago
nimeval.nim 2f109595e9 reset macrocache after each script evaluation (#22195) 1 year ago
nimlexbase.nim 7f6e800caf move assertions out of system (#19599) 3 years ago
nimpaths.nim 088487f652 Implement Markdown definition lists (+ migration) (#20333) 2 years ago
nimsets.nim 7f6e800caf move assertions out of system (#19599) 3 years ago
nodejs.nim 8e9fc5e639 a better message if graphviz's dot/nodejs is not found in PATH (#21488) 2 years ago
nversion.nim b0a98cc01e warn on set types bigger than max size, default to 0..255 for int literals (#21659) 2 years ago
optimizer.nim ddce555998 improve `wasMoved` hooks; allow reset to use the overridden `wasMoved` hook (#21831) 1 year ago
options.nim be1844541c implemented 'push quirky' switch for fine grained control over the ex… (#22318) 1 year ago
packagehandling.nim d30c6419a0 Refactor and doc package handling, module name mangling (#19821) 2 years ago
packages.nim 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
parampatterns.nim 8d47bf1822 new move analyser2 (#20471) 2 years ago
parser.nim dce714b259 Fix grammar top rule (#22325) 1 year ago
passaux.nim b8dc58d884 test removing dollar for objects out of system (#20242) 2 years ago
passes.nim afc30ca879 fixes #19863; move sha1, md5 to nimble packages for 2.0 (#21702) 1 year ago
pathutils.nim 38d299dfc0 fixes #20139; hash types based on its path relative to its package path (#21274) [backport:1.6] 2 years ago
patterns.nim 81087c949f fixes #20572 (#20585) 2 years ago
pipelines.nim a37a83cbff fixes #21617; createTypeBoundOps with PContext in order to instantiate generics (#21619) 2 years ago
pipelineutils.nim d51a392149 replaces implicit passes array registed at runtime with explicit function calls; simplify compilation pipeline (#21444) 2 years ago
platform.nim 3b9e9fd7b2 Add support for NuttX RTOS. (#21372) 2 years ago
pluginsupport.nim a325692fb2 refactoring: fewer global variables 6 years ago
pragmas.nim 49a108b302 Expands codegenDecl to work in function params. fixes #22306 (#22307) 1 year ago
prefixmatches.nim 57bd64582c move tests under the compiler directory to testament (#16096) 4 years ago
procfind.nim 4b9eea2fcc Fix forward declarations in shadow scope contexts (#15386) 4 years ago
readme.md 1ad618d96c clean up the documentation (#22196) 1 year ago
renderer.nim 2f817ee5b4 `infixArgument` fail in `renderer.nim` sometimes (#22264) 1 year ago
renderverbatim.nim e8ae2dc90b bootstrap the compiler with nimPreviewSlimSystem (#20176) 2 years ago
reorder.nim 5b20f0685c fixes pragmas reorder (#21205) 2 years ago
rodutils.nim b6bfe38ff5 move formatfloat out of system (#20195) 2 years ago
ropes.nim 546af8c571 simple micro-optimizations of ropes' runtime-formatting (#21962) 1 year ago
saturate.nim 6a621b35e7 fix warnings for deprecated `low` and `high` (#15291) 4 years ago
scriptconfig.nim c513e37a70 fixes #22212; Compile error when running a Nimscript that compares se… (#22213) 1 year ago
sem.nim 1c2ccfad08 fixes #22301; fixes #22324; rejects branch initialization with a runtime discriminator with defaults (#22303) 1 year ago
semcall.nim 6d21637245 fix scoping regression with calls in generic bodies (#22115) 1 year ago
semdata.nim 4937aa952b adds another pass for sets fixes #6259 (#22099) 1 year ago
semexprs.nim 3ebe24977c Open scope for defer (#22315) 1 year ago
semfields.nim 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
semfold.nim 8e53fba083 replaces `pairs` with `keys` and `items`; saves 8 bytes (#21319) 2 years ago
semgnrc.nim ce72b564bc retain forced open undeclared ident information (#22019) 1 year ago
seminst.nim ce0909f047 fixes #22137 (#22170) 1 year ago
semmacrosanity.nim da0a2fdca2 Unpack mSlice tupleconstr for static openarrays (#20615) 2 years ago
semmagic.nim f0f3904ff0 implement `ensureMove` (#22339) 1 year ago
semobjconstr.nim 1c2ccfad08 fixes #22301; fixes #22324; rejects branch initialization with a runtime discriminator with defaults (#22303) 1 year ago
semparallel.nim 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
sempass2.nim 1aff402998 fixes #6499; disallow built-in procs used as procvars (#22291) 1 year ago
semstmts.nim 62869a5c68 Check try block for endsInNoReturn (#22314) 1 year ago
semstrictfuncs.nim 3812d91390 alternative, much simpler algorithm for strict func checking (#21066) 2 years ago
semtempl.nim 3ac2d81601 consider object types as declarative in templates (#22106) 1 year ago
semtypes.nim 49a108b302 Expands codegenDecl to work in function params. fixes #22306 (#22307) 1 year ago
semtypinst.nim 894a19c6ed fix calls in generic bodies, delay typecheck when no overloads match (#22029) 1 year ago
sighashes.nim afc30ca879 fixes #19863; move sha1, md5 to nimble packages for 2.0 (#21702) 1 year ago
sigmatch.nim 49a108b302 Expands codegenDecl to work in function params. fixes #22306 (#22307) 1 year ago
sinkparameter_inference.nim 2ebd71bfd4 tiny refactoring related to sink parameter inference logic (#21064) 2 years ago
sizealignoffsetimpl.nim 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
sourcemap.nim 89a60939f8 Fix typo in sourcemap.nim (#21438) 2 years ago
spawn.nim 4533e894ad adds an experimental `mm:atomicArc` switch (#21798) 1 year ago
suggest.nim 1b132ddaa2 Fix nimsuggest not showing suggestions for imported tuples (#22241) 1 year ago
syntaxes.nim 42ac50e988 fixes #19662; Indent level errored for first line (#19718) 3 years ago
tccgen.nim e8657c7107 make implicit cstring conversions explicit (#19488) 2 years ago
transf.nim ecc6ab7ee0 fixes #22237; fixes #21160; wrong cursor on unowned parameters in the for loop in ORC (#22240) 1 year ago
trees.nim 1dedad5620 make runnableExamples a special word (#22024) 1 year ago
treetab.nim 7f6e800caf move assertions out of system (#19599) 3 years ago
typeallowed.nim 65223e6f59 fixes #21674; `lent` can be used in the fields or the cast type as a parameter (#21684) 2 years ago
types.nim 894a19c6ed fix calls in generic bodies, delay typecheck when no overloads match (#22029) 1 year ago
typesrenderer.nim 1bb117cd7a `proc` typeclass accounts for `iterator`, call conventions + `nil` fix + document typeclass AST (#21629) 2 years ago
varpartitions.nim f0f3904ff0 implement `ensureMove` (#22339) 1 year ago
vm.nim f718f295df fix VM uint conversion size bug, stricter int gen on JS (#22150) 1 year ago
vmconv.nim 07be1791ba fix #21045; getTime with vmopsDanger is broken; alternative to #21054 (#21056) 2 years ago
vmdef.nim 4647c7b596 fixes #14409; fixes #10674 VM callbacks switch to table-index seqs (#21297) 2 years ago
vmdeps.nim 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
vmgen.nim f0f3904ff0 implement `ensureMove` (#22339) 1 year ago
vmhooks.nim 647d9611ae Add divmod (#22102) 1 year ago
vmmarshal.nim 20b011de19 refactoring in preparation for better, simpler name mangling that wor… (#21667) 1 year ago
vmops.nim 647d9611ae Add divmod (#22102) 1 year ago
vmprofiler.nim c34950f8f5 minor cleanup vmprofiler (#21783) 1 year ago
wordrecg.nim be1844541c implemented 'push quirky' switch for fine grained control over the ex… (#22318) 1 year ago

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.