Nim/compiler
ringabout b6bfe38ff5
move formatfloat out of system (#20195)
* move formatfloat out of system

* fixes doc

* Update changelog.md

* careless

* fixes

* deprecate system/formatfloat

* better handling
2022-08-24 13:38:30 +02:00
..
ic move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02: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
aliases.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
ast.nim test removing dollar for objects out of system (#20242) 2022-08-24 09:44:16 +02:00
astalgo.nim try to optimize hot spots for orc-booting compiler (#20001) 2022-07-12 13:07:18 +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 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 #19631 (#19618) 2022-03-20 14:02:44 +01:00
ccgexprs.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +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 fixes #19967; reset does not work on set [backport: 1.2] (#19968) 2022-08-23 18:38:12 +02:00
ccgstmts.nim Fixed noinit pragma for closure variables (#20101) 2022-07-28 18:43:41 +08: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 remove shallow usages for ORC (#20109) 2022-08-23 18:50:59 +02:00
ccgutils.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
cgen.nim ref #19830; multiple definition of in Nim generated static libraries (#19934) 2022-06-27 17:57:07 +02:00
cgendata.nim fix #19266; allow reassign discriminant field (#19567) 2022-02-25 20:33:28 +01:00
cgmeth.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
closureiters.nim Fixed compilation of void closureiters with try stmt (#20138) [backport] 2022-08-03 08:46:36 +02:00
cmdlinehelper.nim undefine C symbols in JS backend [backport:1.6] (#19437) 2022-02-04 17:10:24 -05:00
commands.nim defines the gcRefc symbol which allows writing specific code for refc (#20009) 2022-07-17 09:24:40 +02:00
concepts.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
condsyms.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +02: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 bootstrap the compiler with nimPreviewSlimSystem (#20176) 2022-08-09 16:32:29 +08:00
dfa.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
docgen.nim Add doctype: RST|Markdown|RstMarkdown pragma (#20252) 2022-08-23 14:49:53 -04:00
docgen2.nim Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
enumtostr.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
errorhandling.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
evalffi.nim make implicit cstring conversions explicit (#19488) 2022-08-19 15:40:53 -04: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 Correctly detect major version of GCC (#20059) 2022-07-18 21:24:39 +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 move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
guards.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
hlo.nim document compiler procs regarding & (#20257) 2022-08-22 04:11:43 -04: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 removed caching logic; saves 400MB for an ORC booting compiler (#19989) 2022-07-09 06:46:05 +02:00
installer.ini make choosenim work on windows [backport] (#18993) 2021-10-14 23:55:05 +08:00
int128.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
isolation_check.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
jsgen.nim fixes #20227; skip distinct types for genObjConstr [JS backend] (#20229) 2022-08-24 13:31:44 +02:00
jstypes.nim jsgen improve spacing (#18048) 2021-05-20 15:48:46 +02:00
lambdalifting.nim Friendlier error message with solution (#19880) 2022-06-11 18:23:31 +02:00
layouter.nim fix #12155, improve nimpretty's handling of pragmas (#17353) 2021-03-12 15:34:42 +01:00
lexer.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
liftdestructors.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
liftlocals.nim fixes #11225; generic sandwich problems; [backport:1.2] (#17255) 2021-03-09 20:19:24 +01:00
lineinfos.nim new .redefine pragma for templates, warn on redefinition without it (#20211) 2022-08-23 21:41:30 +02:00
linter.nim Change styleCheck to ignore foreign packages (#19822) 2022-07-14 14:20:40 +02:00
llstream.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
lookups.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +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 Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02:00
md5_old.nim Use openarray of bytes in md5 (#19307) 2022-01-15 13:19:05 +01:00
modulegraphs.nim remove unused nimfind defines (#20250) 2022-08-23 19:08:56 +02:00
modulepaths.nim Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
modules.nim Refactor and doc package handling, module name mangling (#19821) 2022-05-30 18:52:19 +02:00
msgs.nim remove shallow usages for ORC (#20109) 2022-08-23 18:50:59 +02:00
ndi.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
nilcheck.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
nim.cfg bootstrap the compiler with nimPreviewSlimSystem (#20176) 2022-08-09 16:32:29 +08:00
nim.nim Improve Markdown code blocks & start moving docs to Markdown style (#19954) 2022-07-15 19:27:54 +02: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 Added setGlobalValue to VM api (#19007) 2021-10-17 16:24:43 +02:00
nimlexbase.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
nimpaths.nim Move common Latex code into class nimdoc.cls (#19734) 2022-04-21 15:06:09 -04:00
nimsets.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
nodejs.nim Improve error message when NodeJS is not installed and 'nim js -r' is run (#18978) 2021-10-12 15:41:30 +02:00
nversion.nim Fix spellings (#12277) [backport] 2019-09-27 07:02:54 +02:00
optimizer.nim correct the comments (#19322) 2022-01-04 11:10:46 +01:00
options.nim Implement type command (#19944) 2022-07-15 19:56:05 +02: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 apply changes from #18017 and some fixes (#19571) 2022-03-01 07:46:08 +01:00
parser.nim fixes #19662; Indent level errored for first line (#19718) 2022-04-25 12:00:23 +02:00
passaux.nim test removing dollar for objects out of system (#20242) 2022-08-24 09:44:16 +02:00
passes.nim Initial implementation of nimsuggest v3 (#19826) 2022-06-13 11:33:44 +02:00
pathutils.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
patterns.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
platform.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
pluginsupport.nim refactoring: fewer global variables 2018-05-27 19:19:12 +02:00
pragmas.nim new .redefine pragma for templates, warn on redefinition without it (#20211) 2022-08-23 21:41:30 +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 move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
renderverbatim.nim bootstrap the compiler with nimPreviewSlimSystem (#20176) 2022-08-09 16:32:29 +08:00
reorder.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
rodutils.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
ropes.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
saturate.nim fix warnings for deprecated low and high (#15291) 2020-09-11 01:04:07 +02:00
scriptconfig.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
sem.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
semcall.nim remove {.this.} pragma, deprecated since 0.19 (#20201) 2022-08-23 19:44:37 +02:00
semdata.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +02:00
semexprs.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +02:00
semfields.nim IC: next steps (#16550) 2021-01-07 20:26:40 +01:00
semfold.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
semgnrc.nim Change styleCheck to ignore foreign packages (#19822) 2022-07-14 14:20:40 +02:00
seminst.nim remove {.this.} pragma, deprecated since 0.19 (#20201) 2022-08-23 19:44:37 +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 Change styleCheck to ignore foreign packages (#19822) 2022-07-14 14:20:40 +02:00
semobjconstr.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +02:00
semparallel.nim minor typos (#17668) 2021-04-07 19:54:28 +02:00
sempass2.nim .forbids pragma: defining forbidden tags (#20050) 2022-07-26 07:40:49 +02:00
semstmts.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +02:00
semtempl.nim new .redefine pragma for templates, warn on redefinition without it (#20211) 2022-08-23 21:41:30 +02:00
semtypes.nim fixes #18983 #5282 #13008; recursive types casue infinite type (#20172) 2022-08-23 19:58:50 +02:00
semtypinst.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
sighashes.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
sigmatch.nim remove a special case in sigmatch; distinct pointer types no longer match nil type (#20251) 2022-08-23 19:27:20 +02:00
sinkparameter_inference.nim big steps torwards an efficient, simple IC implementation (#16543) 2021-01-02 07:30:39 +01:00
sizealignoffsetimpl.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +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 Fix bug in freshVarForClosureIter. Fixes #18474 (#19675) [backport] 2022-04-04 12:05:23 +02:00
strutils2.nim Correct all eggs (#15906) 2020-11-10 21:53:25 +01:00
suggest.nim Use module actual file instead of PSym.info (#19956) 2022-07-15 19:56:33 +02: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 document compiler procs regarding & (#20257) 2022-08-22 04:11:43 -04: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 move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
types.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
typesrenderer.nim bootstrap the compiler with nimPreviewSlimSystem (#20176) 2022-08-09 16:32:29 +08:00
varpartitions.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +02:00
vm.nim move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
vmconv.nim make system random work in VM (#17059) 2021-02-17 11:52:46 +01:00
vmdef.nim [vm] remove unused opcSubstr opcode (#19834) 2022-05-30 10:41:24 +02:00
vmdeps.nim move assertions out of system (#19599) 2022-03-23 20:34:53 +01:00
vmgen.nim top-down type inference, implements rfc 149 (#20091) 2022-08-24 07:11:41 +02: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 move formatfloat out of system (#20195) 2022-08-24 13:38:30 +02:00
vmprofiler.nim cleanup of PR #14833 (VM profiler) 2020-07-09 19:21:20 +02:00
wordrecg.nim new .redefine pragma for templates, warn on redefinition without it (#20211) 2022-08-23 21:41:30 +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.