Clyybber
23393b8478
arc now bootstraps ( #17342 )
...
./koch boot --gc:arc works :D
2021-03-12 08:05:54 +01:00
Clyybber
3cbc80045d
Fix #14325 ( #17308 )
...
* Fix #14325
* Refactor and fix
2021-03-11 14:03:25 +01:00
Andreas Rumpf
2f213db7ee
fixes #11225 ; generic sandwich problems; [backport:1.2] ( #17255 )
...
* fixes #11225 ; generic sandwich problems; [backport:1.2]
* progress
* delegating these symbols must be done via 'bind'
2021-03-09 20:19:24 +01:00
Timothee Cour
d161d27cdd
fix #13491 #17279 runnableExamples now don't get lost in translation ( #17282 )
...
* fix #13491 runnableExamples rendering
* fix a runnableExamples thanks to this bugfix
2021-03-09 07:09:24 +01:00
Andreas Rumpf
6cb26d8010
IC: compilerprocs are handled correctly ( #17265 )
...
* IC: compilerprocs are handled correctly
* IC: special logic for .exportC'ed procs
* IC: 'hello world' compiles for the first round (2nd round fails)
* IC: hello world seems to work
2021-03-09 00:04:39 +01:00
flywind
d1e093207a
fix #17267 ( #17273 )
...
* remove unnecessary when statement
* remove outdated codes
* reuse jsffi
* move js json coverage
* fix #17267
* address comments
* Update compiler/main.nim
* Update tests/threads/tjsthreads.nim
2021-03-07 12:13:41 +01:00
Clyybber
38d82795da
Fix #16437 ( #17277 )
...
* Fix #16437
* Fix
* Small cleanup
2021-03-06 22:35:02 +01:00
quantimnot
b2b23d723a
Fix macros.quote custom op symbol interpolation. ( #17256 )
...
Provides a workaround/fix for #7589 .
https://github.com/nim-lang/Nim/issues/7589
Updated docs and tutorial to reflect change.
Updated runnableExamples to include an example.
Co-authored-by: name <name@example.com >
2021-03-05 14:41:33 +01:00
flywind
171b03c386
fix #17264 [backport:1.4] ( #17266 )
...
* fix #17264
* fix vm
* fix js and add tests
2021-03-05 14:39:46 +01:00
Andreas Rumpf
8f1fa3e5b0
IC: further progress ( #17150 )
...
* IC: respect the -f switch
* IC: better rod file inspection
* progress
2021-03-05 09:58:55 +01:00
flywind
f8cfe330b3
follow #17245 deprecate refchecks ( #17261 )
...
* follow #17245 deprecate refchecks
* changelog
* address comments
2021-03-05 09:50:57 +01:00
flywind
e1cc3b83fb
deprecate newruntime ( #17245 )
...
* deprecate newruntime
* tests
* Update compiler/commands.nim
2021-03-04 19:33:16 +01:00
Timothee Cour
f561afae41
followup #17225 : simplify code after removing gc2, generational ( #17242 )
2021-03-03 13:37:42 +01:00
flywind
6391f6e861
fix #16384 and #17144 ( #17126 ) [backport]
2021-03-03 11:58:50 +01:00
Clyybber
507873be25
Use readable escape sequences ( #17241 )
2021-03-03 07:15:07 +01:00
Clyybber
87897fa2d6
Use nicer escape sequences in renderer.nim ( #17239 )
2021-03-02 22:47:52 +01:00
Andrey Makarov
02f4464058
RST heading improvements ( fix #17091 ) ( #17195 )
2021-03-02 16:41:10 +01:00
Timothee Cour
a0daa7a76d
fix #16731 : using deprecated flags triggers a warning ( #17225 )
...
* using deprecated flags triggers a warning
* cleanups
* fixup
* address comments
2021-03-02 13:07:05 +01:00
flywind
5628cd5de1
attempt to fix #16374 ( #17232 )
...
* remove unnecessary when statement
* remove outdated codes
* attempt to fix #16374
* fix
2021-03-02 19:41:55 +08:00
Saem Ghani
ab780f66ef
fixes #17198 , DFA failure on large case stmts ( #17210 )
...
This alters the DFA control flow graph generation for case statments.
Gotos are now generated as a chained link, this ensures that evaluation
of variant branches collapses as early as possible, without hitting the
2k call limit.
2021-03-02 10:32:43 +01:00
Timothee Cour
6c5872c169
--nilseqs is now a deprecated noop (#17211 )
...
* --nilseqs is now a deprecated noop
* fix tests; fix: future => sugar
2021-03-01 20:59:43 +01:00
Juan Carlos
26a6ceb34e
Fix Typos ( #17194 )
2021-02-27 09:51:54 +08:00
Timothee Cour
ff3ace2232
fix code-block test bugs: fix #17183 , fix https://github.com/timotheecour/Nim/issues/620 ( #17184 )
...
* fix code-block test bugs: fix #17183 , fix https://github.com/timotheecour/Nim/issues/620
* cleanup
2021-02-26 16:05:20 +01:00
Timothee Cour
a4e6b242d5
asyncjs: add then, catch for promise pipelining ( #16871 )
...
* asyncjs: add then
* improve tests, changelog, API
* fix cryptic windows error: The parameter is incorrect
* address comments
2021-02-24 21:03:21 +01:00
alaviss
d35f366d6f
compiler/installer.ini: package cacert.pem on Windows [backport:1.2] ( #17172 )
...
Follow up of 5dc544e1f5
After updating windeps.zip, it appears that Windows' build was
unchanged. As it turns out, cacert.pem is not set for packaging by the
compiler package manifest.
This commit add cacert.pem to the Windows package.
2021-02-24 17:57:19 +01:00
Andreas Rumpf
e9a287fe12
fixes #17170 ( #17171 )
2021-02-24 17:43:13 +01:00
Andreas Rumpf
6278b5d89a
new-style concepts implementation, WIP ( #15251 )
...
* fixes #15210 [backport:1.2]
* make tests green
* make ordinal work
* makes Swapable test compile
* make Indexable example work
* concepts: 'self' is now 'Self'
* concepts: make Dictionary example compile
* document the new concept implementation
* concepts: make typeDesc work properly
* concepts: allow documentation comments (d'oh)
2021-02-24 13:17:33 +01:00
Timothee Cour
5d95137ce0
remove tests/deps/ ( #17132 )
...
* remove tests/deps/
* fix tests
* fix tests/manyloc/keineschweine/lib/zlib_helpers.nim
* fixup
2021-02-23 13:31:53 +01:00
Timothee Cour
b1a3651ae4
fix UnusedImport for nim c compiler/nim ( #17152 )
2021-02-23 10:40:40 +01:00
Saem Ghani
7c2ac98880
Fixes #17039 - ldObj checks node/nodeAddr access ( #17123 )
...
Checked field expressions, such as an object variant field access results in
occasionally broken address analysis crashing the VM. This guard added here
mimics guarded access in ldObjAddr as well. This is to prevent a crash, while a
fix is devised.
2021-02-23 09:02:06 +01:00
Saem Ghani
2aba116bbc
when statements branches exit early ( #17143 )
...
When statement branches exit early outside of nimvm. In nimvm it seems that all
sides of the branches must be evaluated as the code gen happens at a later
stage, this remains intact.
2021-02-22 12:27:23 +01:00
Andrey Makarov
fab1618eb4
make rst.nim use object variant ( #17138 )
...
* make rst.nim use object variant
* add workaround
* fix mistake
2021-02-22 11:00:31 +01:00
flywind
32bf10126c
fix #17118 ( #17119 ) [backport:1.2]
...
* fix js unsigned integer
* Use `std` prefix for standard library modules
* fix #17118
2021-02-22 09:14:18 +01:00
Clyybber
6b7a6f8c54
Split last read and first write analysis ( #17137 )
...
* Split last read and first write analysis
This improves performance by 10% for some
cases.
* Remove outdated comments
2021-02-21 16:20:05 +01:00
Andrey Makarov
d1fec552d0
stricter checks for RST headlines ( #17089 )
2021-02-20 18:01:45 +01:00
Andreas Rumpf
4395a26764
fixes #17085 [backport:1.2] ( #17101 )
2021-02-19 12:30:39 +01:00
Andreas Rumpf
8fd1ed6dfe
fixes #17060 ( #17083 )
2021-02-18 12:15:21 +01:00
flywind
8873ec6084
fix #17076 ( #17081 )
2021-02-18 06:59:58 +01:00
Timothee Cour
31bb67a309
add -d:nimStrictMode in CI to keep code from regressing; fixes ConvFromXtoItselfNotNeeded, UnusedImport notes ( #16764 )
2021-02-17 19:30:09 +01:00
flywind
8d63f7b483
clean up old codes ( #17071 )
2021-02-17 19:26:08 +01:00
flywind
874ccc8493
[minor] clean extccomp ( #17069 )
2021-02-17 15:48:17 +01:00
Clyybber
aa3af9e053
ARC Analysis in one pass v3 ( #17068 )
...
* Analyse last reads all at once
* Integrate firstWrite analysis
* Small cleanup
* Use sets instead of seqs
* Remove instrTargets
* Reap the benefits
* Implement error diagnostics
* Operate on DFA index for lastRead analysis
* Use mgetOrPut
* Cache alias results
This improves performance by a lot, since many
CFG locations map to a single PNode
* Improve performance
* Improve performance
* Cleanup
* Fix #17025
* Grammar
* Expand testcase
2021-02-17 14:17:35 +01:00
flywind
4f118721be
make system random work in VM ( #17059 )
...
* make system random work in VM
2021-02-17 11:52:46 +01:00
Andreas Rumpf
f32ffb6ed8
fixes #17033 [backport:1.4] ( #17061 )
...
* fixes #17033 [backport:1.4]
* make test robust against stdlib gensym things
* cleanup assertions.nim to make topt_no_cursor easier to get right
2021-02-17 11:00:03 +01:00
Timothee Cour
b9994925f5
remove all uses of condsyms symbols defined prior to bootstrap nim 0.20.0 ( #16918 )
...
* nimNoArrayToCstringConversion deadcode
* nimbabel deadcode
* nimHasalignOf deadcode
* nimvarargstyped deadcode
* nimhygiene deadcode
* nimNewTypedesc deadcode
* nimlocks deadcode
* nimHasCppDefine deadcode
* nimHasRunnableExamples deadcode
* nimHasNilChecks deadcode
* nimSymKind deadcode
* minor macros refactoring
* nimVmEqIdent deadcode
* nimNoNil deadcode
* nimNoZeroTerminator deadcode
* nimHasSymOwnerInMacro deadcode
* nimVmExportFixed deadcode
* nimNewRuntime deadcode
* nimAshr deadcode
* nimUncheckedArrayTyp deadcode
* nimHasTypeof deadcode
* nimErrorProcCanHaveBody deadcode
* nimHasHotCodeReloading deadcode
* nimHasSignatureHashInMacro deadcode
* nimHasDefault deadcode
* nimMacrosSizealignof deadcode
2021-02-17 09:32:36 +01:00
Timothee Cour
b187caeb87
document since ( #17048 )
...
* document `since`
* address comment
2021-02-16 20:20:01 +01:00
Clyybber
70b9e9962f
Revert "ARC: Analysis in one pass v2 ( #17000 )" ( #17046 )
...
This reverts commit 216be4060a .
2021-02-15 18:31:15 +01:00
flywind
339ebe958d
JS: fix div uint64 no truncation ( #16899 )
2021-02-15 14:22:46 +01:00
Andrey Makarov
35bd39a9d0
RST: implement footnotes and citations ( #16960 )
...
* RST: implement footnotes and citations
* manual fixup of nimdoc.out.css
* remove unused code
* shorter printing code
* Update lib/packages/docutils/rst.nim
Co-authored-by: Andreas Rumpf <rumpf_a@web.de >
2021-02-15 14:12:40 +01:00
flywind
240879bf3d
array literals uses typed arrays; fix a jsgen bug ( #16850 )
...
* array litterals uses typed arrays
* Update compiler/jsgen.nim
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com >
Co-authored-by: Andreas Rumpf <rumpf_a@web.de >
2021-02-15 11:28:11 +01:00