Nim/compiler
2018-09-03 00:32:26 +02:00
..
nimfix implements a --nep1:on switch to make the compiler enforce the naming conventions outlined in NEP-1 2018-06-13 01:44:19 +02:00
plugins baby steps for incremental compilation 2018-05-30 23:50:34 +02:00
aliases.nim more modules compile again 2018-05-12 11:58:44 +02:00
ast.nim fixes merge conflict 2018-08-23 11:30:55 +02:00
astalgo.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
bitsets.nim Generate populationCount const at compile time (#7583) 2018-04-16 21:52:27 +02:00
btrees.nim added btrees.contains 2018-06-03 20:15:37 +02:00
canonicalizer.nim deprecated unary '<' 2017-10-29 08:37:13 +01:00
ccgcalls.nim make tests green again 2018-08-21 20:33:47 +02:00
ccgexprs.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
ccgliterals.nim --gc:destructors: next steps; WIP 2018-07-21 13:16:53 +02:00
ccgmerge.nim WIP: disallow 'nil' for strings and seqs 2018-08-13 11:41:33 +02:00
ccgstmts.nim fixes merge conflict 2018-08-19 15:14:03 +02:00
ccgthreadvars.nim remove the last global variables in the C code generator 2018-05-28 18:18:43 +02:00
ccgtrav.nim exploit nil seqs for performance (#8688) 2018-08-20 11:54:18 +02:00
ccgtypes.nim fixes #8781 by appending "_U" instead of 'U' (#8787) 2018-08-27 08:35:07 +02:00
ccgutils.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
cgen.nim optimize away genericReset for result assignment; refs #8745 2018-08-27 09:10:40 +02:00
cgendata.nim Fixes 8535 (#8591) 2018-08-17 00:34:27 +02:00
cgmeth.nim Pick the and symbol we need explicitly (#8249) 2018-07-08 22:00:32 +02:00
closureiters.nim Make sure addGotoOut always inserts its node (#8843) 2018-09-03 00:32:26 +02:00
cmdlinehelper.nim make config.nims behave like nim.cfg in terms of where these scripts are searched / run (#8682) 2018-08-30 13:52:32 +02:00
commands.nim make config.nims behave like nim.cfg in terms of where these scripts are searched / run (#8682) 2018-08-30 13:52:32 +02:00
condsyms.nim add nimHasWarningX and nimHasHintX defines for feature detection purposes 2018-08-23 17:37:23 +02:00
configuration.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
debuginfo.nim happy new year 2017-01-07 22:35:09 +01:00
depends.nim incremental compilation: implemented basic replay logic 2018-06-02 09:41:27 +02:00
destroyer.nim destroyer pass: adaptations for the new destructor based runtime 2018-07-27 18:21:32 +02:00
dfa.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
docgen.nim change runnableExamples implementation; fixes #8641; fixes #7135; runnableExamples works for templates and generics 2018-09-02 22:56:26 +02:00
docgen2.nim change runnableExamples implementation; fixes #8641; fixes #7135; runnableExamples works for templates and generics 2018-09-02 22:56:26 +02:00
evalffi.nim remove ast.emptyNode global; cleanup configuration.nim 2018-05-16 03:06:07 +02:00
evaltempl.nim baby steps for incremental compilation 2018-05-30 23:50:34 +02:00
extccomp.nim fix shell quoting error for static libraries (#8532) 2018-08-04 01:18:27 +02:00
filter_tmpl.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
filters.nim big refactoring: magicsys compiles again 2018-05-10 13:12:42 +02:00
forloops.nim deprecated unary '<' 2017-10-29 08:37:13 +01:00
gorgeimpl.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
guards.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
hlo.nim New approach 2018-06-12 00:20:08 +01:00
idents.nim deprecate the .this pragma 2018-08-09 20:31:40 +02:00
idgen.nim big refactoring: parser compiles again 2018-05-10 10:49:51 +02:00
importer.nim fixes #8066 2018-08-31 00:30:19 +02:00
incremental.nim incremental compilation: save the configuration 2018-06-11 00:14:29 +02:00
installer.ini Nintendo switch support (#8069) 2018-06-27 12:35:09 +02:00
jsgen.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
jstypes.nim platform.nim doesn't use globals anymore; prepare msgs.nim for not using globals 2018-05-18 15:18:00 +02:00
lambdalifting.nim Access implicit result trough envP in closures (#8471) 2018-07-30 08:34:15 +02:00
layouter.nim nimpretty: detect '; vs ,' style based on the first usage of the token in parameter lists 2018-06-26 01:43:41 +02:00
lexer.nim Cosmetic: fix typo on TRIPLESTR_LIT (#8663) 2018-08-21 22:17:19 +02:00
liftlocals.nim refactoring: remove idents.legacy global variable and pass the IdentCache around explicitly 2018-05-27 22:09:15 +02:00
lineinfos.nim WIP: disallow 'nil' for strings and seqs 2018-08-13 11:41:33 +02:00
linter.nim implements a --nep1:on switch to make the compiler enforce the naming conventions outlined in NEP-1 2018-06-13 01:44:19 +02:00
lists.nim removed compiler internal list implementation (#5371) 2017-02-22 17:33:12 +01:00
llstream.nim closes #5070 2017-10-15 20:55:38 +02:00
lookups.nim fixes #8066 2018-08-31 00:30:19 +02:00
lowerings.nim allow referencing other parameters in default parameter values 2018-06-16 16:46:32 +03:00
macrocacheimpl.nim completed VM support for incremental compilations 2018-06-04 01:01:08 +02:00
magicsys.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
main.nim incremental compilation: implemented basic replay logic 2018-06-02 09:41:27 +02:00
modulegraphs.nim deprecate the .this pragma 2018-08-09 20:31:40 +02:00
modulepaths.nim Fix for module alias inside brackets (#8726) 2018-08-23 10:23:02 +02:00
modules.nim toy program works with incremental compilation 2018-06-07 18:24:16 +02:00
msgs.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
ndi.nim preparations of making compiler/msgs.nim free of global variables 2018-05-17 15:21:22 +02:00
nim.cfg disable -d:nimIncremental for devel 2018-06-11 17:08:25 +02:00
nim.nim make config.nims behave like nim.cfg in terms of where these scripts are searched / run (#8682) 2018-08-30 13:52:32 +02:00
nimblecmd.nim fixes #8776 2018-08-27 11:47:57 +02:00
nimconf.nim make config.nims behave like nim.cfg in terms of where these scripts are searched / run (#8682) 2018-08-30 13:52:32 +02:00
nimeval.nim make tests green again 2018-06-11 01:23:14 +02:00
nimlexbase.nim fixes an off-by-one error for nimpretty 2017-10-16 00:04:46 +02:00
nimsets.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
nodejs.nim Add "safety compilation". Improved, fixed messages 2015-06-04 07:33:27 +02:00
nversion.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
options.nim make config.nims behave like nim.cfg in terms of where these scripts are searched / run (#8682) 2018-08-30 13:52:32 +02:00
packagehandling.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
parampatterns.nim Allow taking address of skForVar variables (#8632) 2018-08-14 21:28:14 +02:00
parser.nim Cosmetic: fix typo on TRIPLESTR_LIT (#8663) 2018-08-21 22:17:19 +02:00
passaux.nim incremental compilation: implemented basic replay logic 2018-06-02 09:41:27 +02:00
passes.nim refactorings in preparations for the new runtime 2018-07-10 10:39:53 +02:00
patterns.nim fixes more nil handling regressions 2018-08-13 17:27:44 +02:00
platform.nim Nintendo switch support (#8069) 2018-06-27 12:35:09 +02:00
pluginsupport.nim refactoring: fewer global variables 2018-05-27 19:19:12 +02:00
pragmas.nim allow .experimental in a .push/pop environment; refs #8676 2018-08-27 11:20:30 +02:00
prefixmatches.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
procfind.nim make tests green again 2018-05-18 20:53:41 +02:00
readme.txt Nimrod renamed to Nim 2014-08-28 09:38:14 +02:00
renderer.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
reorder.nim incremental compilation: implemented basic replay logic 2018-06-02 09:41:27 +02:00
rod.nim incremental compilation: implemented basic replay logic 2018-06-02 09:41:27 +02:00
rodimpl.nim incremental compilation: save the configuration 2018-06-11 00:14:29 +02:00
rodutils.nim fixes 8594 (#8721) 2018-08-22 12:16:18 +02:00
ropes.nim WIP: disallow 'nil' for strings and seqs 2018-08-13 11:41:33 +02:00
saturate.nim compiler: Trim .nim files trailing whitespace 2015-09-04 23:03:22 +02:00
scriptconfig.nim make config.nims behave like nim.cfg in terms of where these scripts are searched / run (#8682) 2018-08-30 13:52:32 +02:00
sem.nim change runnableExamples implementation; fixes #8641; fixes #7135; runnableExamples works for templates and generics 2018-09-02 22:56:26 +02:00
semasgn.nim destroyer pass: adaptations for the new destructor based runtime 2018-07-27 18:21:32 +02:00
semcall.nim show all mismatching overloads again 2018-08-27 17:07:12 +02:00
semdata.nim change runnableExamples implementation; fixes #8641; fixes #7135; runnableExamples works for templates and generics 2018-09-02 22:56:26 +02:00
semexprs.nim change runnableExamples implementation; fixes #8641; fixes #7135; runnableExamples works for templates and generics 2018-09-02 22:56:26 +02:00
semfields.nim refactoring: remove idents.legacy global variable and pass the IdentCache around explicitly 2018-05-27 22:09:15 +02:00
semfold.nim Constant folding for integer casts (#8095) 2018-08-31 13:45:42 +02:00
semgnrc.nim fixes #8694 2018-09-02 22:44:48 +02:00
seminst.nim fixes #4766 2018-08-28 15:41:55 +02:00
semmacrosanity.nim make tests green again 2018-08-13 23:16:03 +02:00
semmagic.nim fixes #7827, bindSym enhancement (#8499) 2018-08-02 12:56:44 +02:00
semobjconstr.nim WIP: disallow 'nil' for strings and seqs 2018-08-13 11:41:33 +02:00
semparallel.nim refactoring: remove idents.legacy global variable and pass the IdentCache around explicitly 2018-05-27 22:09:15 +02:00
sempass2.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
semstmts.nim Validate pragmas attached to for variables (#8749) 2018-08-24 09:40:17 +02:00
semtempl.nim fixes #8052 2018-08-31 17:27:57 +02:00
semtypes.nim fixes merge conflict 2018-08-23 11:30:55 +02:00
semtypinst.nim WIP: disallow 'nil' for strings and seqs 2018-08-13 11:41:33 +02:00
sighashes.nim Correctly hash inferred types (#8286) 2018-07-12 13:00:11 +02:00
sigmatch.nim Do not materialize empty varargs[untyped] arrays (#8715) 2018-08-31 12:16:46 +02:00
suggest.nim make nimsuggest compile again 2018-08-23 17:36:24 +02:00
syntaxes.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
tccgen.nim nimrod is obsolete 2015-11-03 14:52:36 +01:00
transf.nim fixes merge conflict 2018-08-19 15:14:03 +02:00
trees.nim introduce nkTupleConstr AST node for unary tuple construction; breaking change 2018-04-13 17:45:58 +02:00
treetab.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
types.nim fixes merge conflict 2018-08-23 11:30:55 +02:00
typesrenderer.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
vm.nim Allow hint and warning to specify its loc info (#8771) 2018-08-28 22:59:28 +02:00
vmdef.nim change the VM's max instruction count to 3_000_000 2018-08-10 08:42:13 +02:00
vmdeps.nim Custom pragmas in proc types (#8205) 2018-07-09 12:11:03 +02:00
vmgen.nim Allow hint and warning to specify its loc info (#8771) 2018-08-28 22:59:28 +02:00
vmhooks.nim stdlib and compiler don't use .immediate anymore 2016-07-29 23:51:01 +02:00
vmmarshal.nim even more strict isNil handling for strings/seqs in order to detect bugs 2018-08-22 12:35:46 +02:00
vmops.nim compiler API: final cleanups; improve security by diabling 'gorge' and friends 2018-05-29 09:07:24 +02:00
wordrecg.nim remove dead code elimination option (#7669) 2018-04-23 11:02:38 +02:00
writetracking.nim remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00

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.