Commit Graph

13650 Commits

Author SHA1 Message Date
LemonBoy
ee14ace5d3 Field checks for everybody (#8957)
* Field checks for JS backend

* Clean nkCall nodes with no arguments

Generating a nkEmpty in place of no arguments makes no sense form the
AST point of view and also trips up the VM codegen.

* Field checks for VM backend

* Test case for #6612

This patchset fixes #6612

* Add test case for LHS double evaluation

* Prevent LHS double-eval for JS backend

* Prevent double evaluation in VM backend
2018-10-09 19:54:12 +02:00
LemonBoy
a3fb0a769c Try/Catch support for native JS exceptions (#8955)
* Try/Catch support for native JS exceptions

* Better tests
2018-10-09 19:51:29 +02:00
LemonBoy
f98a3056c6 Fix transformation of yield in inline context (#9135)
When the loop variables are part of the envP block it is not safe to use
a nkFastAsgn.

Fixes #2656
2018-10-09 19:43:31 +02:00
Dominik Picheta
21ecf64d24 Fixes #8994. FutureStream read procedure data loss no longer occurs. (#9183)
* Fixes #8994. FutureStream read procedure data loss no longer occurs.

* Optimises the fix for #8994.
2018-10-09 19:39:12 +02:00
Arne Döring
5076fda2e2 fix for #9082 (#9089) 2018-10-09 19:37:53 +02:00
Yasuhiro Horimoto
fe19670c52 Fixes #8841 (#9101)
Modify comments for readChar and peekChar to the same as the comment for them in the source code.
2018-10-09 19:30:02 +02:00
Timothee Cour
a98b1a7764 fix #8341: add lastPathPart (#9116) 2018-10-09 19:27:31 +02:00
LemonBoy
b97a7dbf3d Make the registered passes local to the ModuleGraph (#9259)
Closes #9068
2018-10-09 19:24:02 +02:00
technicallyagd
85187d4ba3 Fixes some minor typos in nimsuggest.rst (#9223)
* Fix Minor typo in nimsuggest.rst

* Fixes two more typo in nimsuggest.rst
2018-10-09 17:45:00 +02:00
alaviss
2a31f42d35 asyncmacro: add nnkSym support for getName() (#9204)
Fixes #9201
2018-10-09 15:53:13 +02:00
LemonBoy
8a1055adce Fix range type construction in the VM (#9205)
The `range[X,Y]` representation is wrong, we use `range[X .. Y]`
instead.

Fixes #9194
2018-10-09 15:51:49 +02:00
alaviss
dad290accb os: use unlink() to remove file (#9220)
removeFile() behavior should now be consistant between Windows and POSIX

Fixes #9200
2018-10-09 15:37:36 +02:00
Kaushal Modi
c0266e1afa Fix typo in an algorithm runnableExamples (#9260)
Fixes the 'koch docs' build failure.

Ref:
b90b45b01b
2018-10-09 15:36:36 +02:00
cooldome
036c52f0b6 fixes #9222 (#9224) 2018-10-09 15:19:21 +02:00
Timothee Cour
73e6b229aa [os] clarify docs for existsDir (#9212)
* Update os.nim

* Update os.nim
2018-10-09 15:04:29 +02:00
LemonBoy
d36f98fa8b nim doc can run code blocks (#9228) 2018-10-09 14:58:40 +02:00
xzfc
505ae14f4b Codegen fix for procs taking type(nil) (#9231) 2018-10-09 14:51:34 +02:00
LemonBoy
b8d2f79ef0 Prevent the construction of recursive tyStatic types (#9256)
Fixes #9255
2018-10-09 14:26:34 +02:00
Dheepak Krishnamurthy
70018aa683 Add checks for except: body blocks (#9191) 2018-10-09 14:09:22 +02:00
jcosborn
dd65986795 fixes #4435 (#9185) 2018-10-09 13:34:03 +02:00
pqflx3
b90b45b01b Add algorithm.[sort,sorted,isSorted] overloads using 'system.cmp'. (#8778)
* Add algorithm.[sort,sorted,isSorted] overloads using 'system.cmp'. Fixes 8684.

* Change signatures to 'func'. Improve overload sort doc comments
2018-10-09 13:25:25 +02:00
Juan Carlos
bc557e4c6a HTMLGen Update, Add runnableExamples, Add HTML Tags center, details, dialog, marquee, picture, slot, summary (#9252) 2018-10-09 13:13:13 +02:00
LemonBoy
18023c023d Replace the sha1 implementation w/ a working one (#9242)
As #9239 points out the old implementation had some serious flaws.
The new implementation is a port of the MIT-licensed one used by
Chromium OS and has been tested against the FIPS-provided vectors and by
generating huge files like the ones mentioned in the issue above.

While I tried my best to take into account the existence of BE machines
the code has only been tested on a LE one.
2018-10-09 11:50:10 +02:00
Araq
66c0f7c3fb development version is 0.19.1 2018-10-09 10:31:27 +02:00
Miran
cd5049e078 [cleanup] remove web folder (#9233)
Closes #7577
2018-10-08 20:42:38 +02:00
Timothee Cour
7cadb5a65d build_all.sh fix bug introduced in https://github.com/nim-lang/Nim/pull/9145
/cc @valtron printf doesn't include trailing newline, unlike echo
2018-10-08 14:07:09 +02:00
Timothee Cour
403f5aea14 define NIM_NIL nullptr when __cplusplus >= 201103L 2018-10-08 14:05:43 +02:00
Dominik Picheta
269b957e29 Merges #8451 manually. Fixes #8099. 2018-10-03 21:25:11 -07:00
Dominik Picheta
8c2f576527 Merge pull request #9171 from flaviut/fix-9053
Use runnableExamples for nre example code where possible
2018-10-03 20:43:47 -07:00
Timothee Cour
64ae47e6f0 Update macros.nim (#9182)
* Update macros.nim

* Update macros.nim
2018-10-03 20:33:57 -07:00
Flaviu Tamas
f55580383c Use runnableExamples for example nre code 2018-10-03 16:39:43 -04:00
Andreas Rumpf
5ea0bf1940 koch tools: build Nimble in release mode 2018-10-03 22:19:45 +02:00
Andreas Rumpf
4b845d8edb Merge pull request #9168 from timotheecour/patch-4
add link to https://nim-lang.github.io/Nim/ in readme.md
2018-10-03 21:00:54 +02:00
Andreas Rumpf
6e09f40c4e Merge pull request #9167 from LemonBoy/fix-asyncmacro-regression
Fix regression w/ templates defined in async proc
2018-10-03 19:20:33 +02:00
Timothee Cour
d3ea56ad15 add link to https://nim-lang.github.io/Nim/ in readme.md 2018-10-03 09:46:40 -07:00
LemonBoy
2c0bfb34fd Fix regression w/ templates defined in async proc 2018-10-03 18:25:25 +02:00
Steve Kellock
91c13a0163 [docs/json]: expands existing examples + shows {} operator in action (#9157)
* [docs/json]: expands existing examples + shows {} operator in action

* adds import stmt and fixes butchered syntax in json examples
2018-10-02 20:47:21 -07:00
Dominik Picheta
afd5b00310 Merge pull request #9152 from barbeque/4934-remove-old-install-scripts
Remove install_nimble.nims, install_tools.nims as per #4934
2018-10-02 20:03:45 -07:00
Araq
82693514c5 attempt to fix the .line pragma 2018-10-03 01:25:47 +02:00
Araq
1428aeccfb closes #5868 2018-10-03 00:08:45 +02:00
Araq
9bd23b2d4c nimbase.h: use 0 instead of nullptr because travis' C++ compiler doesn't know nullptr 2018-10-03 00:01:48 +02:00
Araq
c92fdb24c8 fixes #5015 2018-10-03 00:00:19 +02:00
Araq
bf85955802 fixes #7092 2018-10-02 23:45:27 +02:00
Araq
7ac1e6e528 fixes #5479 2018-10-02 23:31:39 +02:00
Araq
f673fbd91f fixes #6533 2018-10-02 19:54:02 +02:00
Araq
400a7ff1bb closes #6249 2018-10-02 19:41:47 +02:00
Araq
c3465e4379 nimsuggest docs: minor update; v2 of the protocol is now the default 2018-10-02 19:41:20 +02:00
Araq
7935c4aa5a C++ codegen: emit correctly typed code for closures in 'const'; refs #7870 2018-10-02 19:35:24 +02:00
Araq
7bac21ac23 ccgtypes: improve internal documentation 2018-10-02 19:33:29 +02:00
Araq
c2de135905 C++ codegen: map nil to nullptr 2018-10-02 16:18:16 +02:00