Nim/compiler
flywind 677969f6ea
alternative to #18918 (#18927)
* fix #16558

* add testcase
2021-09-30 16:57:06 +02:00
..
ic [minor]use addInt and addFloat (#18733) 2021-08-24 17:16:12 +02:00
nimfix [backport] use old style hints in .cfg files (#18917) 2021-09-29 11:14:47 +02:00
plugins IC: next steps (#16550) 2021-01-07 20:26:40 +01:00
aliases.nim Fixed objects being erroneously zeroed out before object construction (#12814) [backport] 2019-12-05 17:31:51 +01:00
ast.nim correct effect tracking for .borrowed procs [backport] (#18882) 2021-09-23 16:47:24 +02:00
astalgo.nim add comment to astalgo.debug (#18594) 2021-07-27 09:37:11 +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 Cosmetic compiler cleanup (#12718) 2019-11-28 17:13:04 +01:00
btrees.nim ORC: progress (#18000) 2021-05-12 22:00:37 +02:00
ccgcalls.nim fixes #12642 (#18811) 2021-09-06 17:43:03 +02:00
ccgexprs.nim correct effect tracking for .borrowed procs [backport] (#18882) 2021-09-23 16:47:24 +02:00
ccgliterals.nim Removed lib/system/allocators.nim. seqs_v2 and strs_v2 now uses allocShared0. (#13190) 2020-01-23 14:25:22 +01:00
ccgmerge_unused.nim IC: green tests (#17311) 2021-03-19 16:53:38 +01:00
ccgreset.nim cString => cSourceString; tyCString => tyCstring so that error msgs show cstring, not cString (#17744) 2021-04-17 11:14:09 +02:00
ccgstmts.nim fixes #17085 [backport:1.2] (#17101) 2021-02-19 12:30:39 +01:00
ccgthreadvars.nim fix #16752: threadvar now works with importcpp types; osx now uses native TLS (--tlsEmulation:off), which can be orders of magnitude faster (#16750) 2021-01-27 22:35:43 +01:00
ccgtrav.nim allow old styled RTTI for arc/orc (#15331) 2020-09-16 14:57:01 +02:00
ccgtypes.nim more minor bootstrapping cleanups (#18759) 2021-08-28 08:27:56 +02:00
ccgutils.nim Fix #17412 (#17560) 2021-03-29 21:16:11 +02:00
cgen.nim this ensures libp2p continues to compile [backport] (#18908) 2021-09-27 19:25:00 +02:00
cgendata.nim IC: green tests (#17311) 2021-03-19 16:53:38 +01:00
cgmeth.nim IC: final implementation steps (#16801) 2021-01-25 20:52:26 +01:00
closureiters.nim real bugfix for #17170 (#18171) 2021-06-04 16:20:47 +02:00
cmdlinehelper.nim fix setCommand so it behaves like regular nim invocation (#18555) 2021-07-22 08:00:29 +02:00
commands.nim fixes #18921 [backport] (#18930) 2021-09-30 12:09:42 +02:00
concepts.nim Make error message for empty new-styled concept more descriptive (#18506) 2021-07-18 10:49:03 +02:00
condsyms.nim strict effects (#18777) 2021-09-02 12:10:14 +02:00
debuginfo.nim happy new year 2017-01-07 22:35:09 +01:00
debugutils.nim add more APIs to compiler/debugutils; re-export it (#18243) 2021-06-18 15:52:08 +02:00
depends.nim genDepend: fix for module names that are reserved DOT keywords (#18392) 2021-06-30 07:29:10 +02:00
dfa.nim [backport] arc: improve compile time of (nested) loops (#18890) 2021-09-24 14:59:48 +02:00
docgen.nim strict effects (#18777) 2021-09-02 12:10:14 +02:00
docgen2.nim docgen: move to shared RST state (fix #16990) (#18256) 2021-06-20 09:50:03 +02:00
enumtostr.nim big steps torwards an efficient, simple IC implementation (#16543) 2021-01-02 07:30:39 +01:00
errorhandling.nim misc fixes: build_all.sh, changelog (#17601) 2021-04-01 08:48:44 +02:00
evalffi.nim cString => cSourceString; tyCString => tyCstring so that error msgs show cstring, not cString (#17744) 2021-04-17 11:14:09 +02: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 --cc:env now works correctly to assign linker executable, allowing to cross-compile/run for windows on osx via wine (#18672) 2021-08-11 11:42:01 +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 Fixed #12337, leaking pipe after gorge (#12339) 2019-10-03 00:48:31 -04:00
guards.nim this ensures libp2p continues to compile [backport] (#18908) 2021-09-27 19:25:00 +02:00
hlo.nim explicit ID generation for easier IC (#15559) 2020-10-25 08:50:47 +01:00
idents.nim IC: next steps (#16550) 2021-01-07 20:26:40 +01:00
importer.nim followup #18362: make UnusedImport work robustly (#18366) 2021-06-27 20:39:16 +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 #18570 (#18599) 2021-07-27 12:48:27 +02:00
installer.ini ported Nim to proprietary CrossOS [backport] (#18889) 2021-09-24 13:24:41 +02:00
int128.nim CIs: attempt to use csources_v1 (#16282) 2021-04-21 07:41:33 +02:00
isolation_check.nim fixes #18326 (#18335) 2021-06-23 23:31:17 +02:00
jsgen.nim correct effect tracking for .borrowed procs [backport] (#18882) 2021-09-23 16:47:24 +02:00
jstypes.nim jsgen improve spacing (#18048) 2021-05-20 15:48:46 +02:00
lambdalifting.nim closes #18690; make view types stricter [backport] (#18891) 2021-09-24 16:27:34 +02:00
layouter.nim fix #12155, improve nimpretty's handling of pragmas (#17353) 2021-03-12 15:34:42 +01:00
lexer.nim fix wrong name (rnimsyn => renderer; pnimsyn => parser; scanner => lexer) (#18895) 2021-09-25 13:22:00 +02:00
liftdestructors.nim fixes #17893 (#18485) 2021-07-13 14:17:59 +02:00
liftlocals.nim fixes #11225; generic sandwich problems; [backport:1.2] (#17255) 2021-03-09 20:19:24 +01:00
lineinfos.nim strict effects (#18777) 2021-09-02 12:10:14 +02:00
linter.nim add astmsgs; add declared in msg for usage lint errors (#17961) 2021-05-08 06:43:52 +02:00
llstream.nim Use readable escape sequences (#17241) 2021-03-03 07:15:07 +01:00
lookups.nim [minor]break loops after a candidate is added to seqs (#18770) 2021-08-31 13:32:37 +02:00
lowerings.nim big steps torwards an efficient, simple IC implementation (#16543) 2021-01-02 07:30:39 +01: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 rst: add missing line/column info for some warnings (#18383) 2021-07-20 08:32:22 +02:00
modulegraphs.nim improvements to hint:processing: show import stack, distinguish nims, show includes etc (#18372) 2021-06-30 07:16:31 +02:00
modulepaths.nim Add changes required by Nimble lock file support (#12104) 2021-07-15 22:13:01 +02:00
modules.nim improvements to hint:processing: show import stack, distinguish nims, show includes etc (#18372) 2021-06-30 07:16:31 +02:00
msgs.nim [wip]better hint message for JS (#18704) 2021-08-18 15:53:52 +02:00
ndi.nim fix open file leak when running --debugger:native (#13832) 2020-04-01 17:48:17 +02:00
nilcheck.nim CIs: attempt to use csources_v1 (#16282) 2021-04-21 07:41:33 +02:00
nim.cfg [backport] use old style hints in .cfg files (#18917) 2021-09-29 11:14:47 +02:00
nim.nim cross compilation targetting windows now supports nim r: nim r -d:mingw main (#18682) 2021-08-16 09:32:12 +02:00
nimblecmd.nim Add changes required by Nimble lock file support (#12104) 2021-07-15 22:13:01 +02:00
nimconf.nim fix wrong name (rnimsyn => renderer; pnimsyn => parser; scanner => lexer) (#18895) 2021-09-25 13:22:00 +02:00
nimeval.nim import foo {.all.} reboot (#17706) 2021-04-16 09:16:39 +02:00
nimlexbase.nim get rid of the warnings during bootstrapping (#18741) 2021-08-24 17:15:26 +02:00
nimpaths.nim CIs: attempt to use csources_v1 (#16282) 2021-04-21 07:41:33 +02:00
nimsets.nim init checks and 'out' parameters (#14521) 2020-06-23 10:53:57 +02:00
nodejs.nim Remove IO.js compat (long dead vanished project,superseed by NodeJS) (#11627) 2019-07-01 11:59:02 +02:00
nversion.nim Fix spellings (#12277) [backport] 2019-09-27 07:02:54 +02:00
optimizer.nim fixes #11225; generic sandwich problems; [backport:1.2] (#17255) 2021-03-09 20:19:24 +01:00
options.nim ported Nim to proprietary CrossOS [backport] (#18889) 2021-09-24 13:24:41 +02:00
packagehandling.nim IC: next steps (#16550) 2021-01-07 20:26:40 +01:00
parampatterns.nim reuse existing toHumanStr (#15674) 2020-10-21 15:53:43 -07:00
parser.nim fixes #18847 [backport] (#18870) 2021-09-20 09:09:53 +02:00
passaux.nim improvements to hint:processing: show import stack, distinguish nims, show includes etc (#18372) 2021-06-30 07:16:31 +02:00
passes.nim IC: backend: remember produced type information (#17440) 2021-03-23 08:52:00 +01:00
pathutils.nim move tests under the compiler directory to testament (#16096) 2020-11-25 07:48:27 +01:00
patterns.nim fix a typo (canonilization => canonicalization) (#18914) 2021-09-28 03:05:22 -04:00
platform.nim ported Nim to proprietary CrossOS [backport] (#18889) 2021-09-24 13:24:41 +02:00
pluginsupport.nim refactoring: fewer global variables 2018-05-27 19:19:12 +02:00
pragmas.nim strict effects (#18777) 2021-09-02 12:10:14 +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 fix wrong name (rnimsyn => renderer; pnimsyn => parser; scanner => lexer) (#18895) 2021-09-25 13:22:00 +02:00
renderverbatim.nim runnableExamples now show originating location in stacktraces on failure (#18457) 2021-07-09 11:41:28 +02:00
reorder.nim ast: add getPIdent (#17684) 2021-04-09 08:00:13 +02:00
rodutils.nim make -d:nimFpRoundtrips work consistently in vm vs rt, fix #18400, etc (#18531) 2021-07-20 22:13:52 +02:00
ropes.nim Cosmetic compiler cleanup (#12718) 2019-11-28 17:13:04 +01:00
saturate.nim fix warnings for deprecated low and high (#15291) 2020-09-11 01:04:07 +02:00
scriptconfig.nim fix setCommand so it behaves like regular nim invocation (#18555) 2021-07-22 08:00:29 +02:00
sem.nim fixes 'lent T' inside object constructor [backport] (#18911) 2021-09-27 22:23:31 +02:00
semcall.nim strict effects (#18777) 2021-09-02 12:10:14 +02:00
semdata.nim implements https://github.com/nim-lang/RFCs/issues/407 (#18793) 2021-09-03 21:52:24 +02:00
semexprs.nim alternative to #18918 (#18927) 2021-09-30 16:57:06 +02:00
semfields.nim IC: next steps (#16550) 2021-01-07 20:26:40 +01:00
semfold.nim get rid of the warnings during bootstrapping (#18741) 2021-08-24 17:15:26 +02:00
semgnrc.nim fixes #18769 (#18790) 2021-09-03 15:18:55 +02:00
seminst.nim fixes #16246 (#18800) 2021-09-04 15:57:16 +02: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 test ord (#18909) 2021-09-28 11:35:04 +02:00
semobjconstr.nim fixes 'lent T' inside object constructor [backport] (#18911) 2021-09-27 22:23:31 +02:00
semparallel.nim minor typos (#17668) 2021-04-07 19:54:28 +02:00
sempass2.nim correct effect tracking for .borrowed procs [backport] (#18882) 2021-09-23 16:47:24 +02:00
semstmts.nim fixes 'lent T' inside object constructor [backport] (#18911) 2021-09-27 22:23:31 +02:00
semtempl.nim fixes #18863 [backport] (#18871) 2021-09-20 11:37:54 +02:00
semtypes.nim followup #18759: make compiler build cleanly with 0 warnings/hints (#18764) 2021-08-28 16:34:27 -07:00
semtypinst.nim Alternative to #18928 (#18931) 2021-09-30 16:55:43 +02:00
sighashes.nim get rid of the warnings during bootstrapping (#18741) 2021-08-24 17:15:26 +02:00
sigmatch.nim implements https://github.com/nim-lang/RFCs/issues/407 (#18793) 2021-09-03 21:52:24 +02:00
sinkparameter_inference.nim big steps torwards an efficient, simple IC implementation (#16543) 2021-01-02 07:30:39 +01:00
sizealignoffsetimpl.nim cString => cSourceString; tyCString => tyCstring so that error msgs show cstring, not cString (#17744) 2021-04-17 11:14:09 +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 add colon (#17834) 2021-04-24 18:33:29 +01:00
strutils2.nim Correct all eggs (#15906) 2020-11-10 21:53:25 +01:00
suggest.nim get rid of the warnings during bootstrapping (#18741) 2021-08-24 17:15:26 +02:00
syntaxes.nim -d:nimDebug: calls doAssert false instead of quit (#17739) 2021-04-17 11:49:54 +02:00
tccgen.nim move tinyc to a separate repo and allow installing external dependencency (eg tinyc) from koch / library code (#13850) 2020-04-03 09:10:45 +02:00
transf.nim fixes #12642 (#18811) 2021-09-06 17:43:03 +02:00
trees.nim Revert "fix #16185 (#16195)" (#16197) 2020-11-30 23:36:38 +01:00
treetab.nim treetab: tiny cleanup (#17929) 2021-05-09 00:56:37 +02:00
typeallowed.nim Fix subranges of distinct types (#18816) [backport] 2021-09-07 17:11:08 +02:00
types.nim fixes #16246 (#18800) 2021-09-04 15:57:16 +02:00
typesrenderer.nim remove all mentions of doc2, jsondoc2 (except 1 mentioning the alias) (#15683) 2020-11-26 11:54:18 -08:00
varpartitions.nim fixes #18287 (#18346) 2021-06-25 06:22:52 +02:00
vm.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
vmconv.nim make system random work in VM (#17059) 2021-02-17 11:52:46 +01:00
vmdef.nim ORC: progress (#18000) 2021-05-12 22:00:37 +02:00
vmdeps.nim getType now works with tyInferred (arising from concepts); refs #18220 (#18241) 2021-06-12 21:35:12 +02:00
vmgen.nim correct effect tracking for .borrowed procs [backport] (#18882) 2021-09-23 16:47:24 +02:00
vmhooks.nim make -d:nimFpRoundtrips work consistently in vm vs rt, fix #18400, etc (#18531) 2021-07-20 22:13:52 +02:00
vmmarshal.nim cString => cSourceString; tyCString => tyCstring so that error msgs show cstring, not cString (#17744) 2021-04-17 11:14:09 +02:00
vmops.nim envPairs works in vm, nims (#18615) 2021-09-29 09:32:39 +02:00
vmprofiler.nim cleanup of PR #14833 (VM profiler) 2020-07-09 19:21:20 +02:00
wordrecg.nim implements https://github.com/nim-lang/RFCs/issues/407 (#18793) 2021-09-03 21:52:24 +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.