Commit Graph

3723 Commits

Author SHA1 Message Date
Andreas Rumpf
d8746398c4 allow macros to produce nnkGotoState and nkState 2017-10-09 21:12:40 +02:00
Andreas Rumpf
cf01cb1935 preparations for a new AST transformation pass with the aim of giving us reliable destructors 2017-10-09 21:12:40 +02:00
Andreas Rumpf
6e337fe58a further preparations for 'opt' builtin type 2017-10-09 21:12:40 +02:00
Andreas Rumpf
740c07ead4 fixes a codegen bug: in 'result = f(result)' the default initialization for 'result' IS required 2017-10-09 21:12:40 +02:00
Andreas Rumpf
7eaa2474a2 disable the new DFA 2017-10-09 21:12:40 +02:00
Andreas Rumpf
b9511a2d7f work in progress: a dataflow architecture for Nim 2017-10-09 21:12:40 +02:00
Eduardo Bart
5c1a842b88 Add missing nilChecks compiling option (#6480) 2017-10-09 19:09:49 +02:00
Andreas Rumpf
125ccd303e nimpretty bugfix 2017-10-06 08:20:56 +02:00
Andreas Rumpf
eddf9abd13 beginnings of the new nimpretty tool; still unusable 2017-10-05 08:43:22 +02:00
Bo Lingen
535f21ced3 direct nim --version to stdout rather than stderr (#6460)
Closes #6298
2017-10-02 12:20:24 +02:00
Andreas Rumpf
02ff5f596c implemented new experimental scriptable import mechanism 2017-10-01 23:38:23 +02:00
Andreas Rumpf
ddc131cf07 the parser finally parses 'echo {1,2}' as it should 2017-09-30 21:35:30 +02:00
Araq
b2c358be96 the 'using construct is not .experimental anymore 2017-09-30 18:32:44 +02:00
Araq
3ccc9c467d 'with' and 'without' are not keywords anymore 2017-09-30 18:32:44 +02:00
Araq
7b63ee85b9 fixes #6452 2017-09-30 15:37:01 +02:00
Andreas Rumpf
7349d12e96 GC v2 works sometimes 2017-09-28 21:48:43 +02:00
Andreas Rumpf
2bdbe97af1 workaround a GC/codegen issue that proves nasty to fix 2017-09-26 22:19:31 +02:00
Andreas Rumpf
61720e0df9 breaking change: getAst strips away pointless nnkStmtList nodes; node rendering of nnkStmtList without wrong indentation 2017-09-26 10:24:14 +02:00
Andreas Rumpf
77453f33df fixes #6435 2017-09-25 14:27:19 +02:00
Andreas Rumpf
f7f3a25be8 first steps of making 'opt' a first class type for Nim 2017-09-25 13:19:36 +02:00
Andreas Rumpf
e879da5791 some work to make 'opt' a first class type 2017-09-24 11:21:52 +02:00
Andreas Rumpf
be2e7290fb write tracking for funcs implemented 2017-09-23 23:29:23 +02:00
Andreas Rumpf
1a61c4d46d first implementation of the 'func' keyword 2017-09-23 23:22:53 +02:00
Andreas Rumpf
2e93bac227 Merge branch 'devel' into araq-better-codegen 2017-09-23 20:07:30 +02:00
Andreas Rumpf
7aad0d6544 added 'nim jsonscript' feature 2017-09-23 16:29:05 +02:00
Andreas Rumpf
5298a72f34 NimScript: added buildOS and buildCPU constants 2017-09-22 13:29:45 +02:00
Andreas Rumpf
dcfafb3289 Merge branch 'araq-better-pure-enums' into araq-better-codegen 2017-09-22 10:15:49 +02:00
Andreas Rumpf
3936587c06 fixes #6403 2017-09-21 21:07:18 +02:00
Andreas Rumpf
1c0c9d8959 make tests green again 2017-09-21 21:07:00 +02:00
Andreas Rumpf
405b9c8a85 refactoring: TLoc knows the node it originated from; it is planned to use this to produce better C code (move optimizations) 2017-09-21 14:38:45 +02:00
Andreas Rumpf
a04c7d8b38 introduce OnHeapNew and rename TLoc.s to TLoc.storage 2017-09-21 11:38:04 +02:00
Andreas Rumpf
fd4ef6ae8f .pure enums are much more convenient to use now 2017-09-17 17:36:37 +02:00
Parashurama
88a5e9d88c Fix operations on string as openarray in VM. (#6257)
* fix openarray.len for string as openArray in VM.
* fix openarray[idx] for string as openArray in VM.
* fix openarray[idx]=val for string as openArray in VM.
* add tests for passing string as openArray in VM.
* fix issue with NimNode.len
NimNode.len was also returning len for string literals.
also fix logic bug in if/elif chain.
2017-09-15 13:35:57 +02:00
Yuriy Glukhov
c3117e1aba Fixes #6336 (#6337) 2017-09-06 22:55:09 +02:00
Yuriy Glukhov
d8944b93cb Fixed handling of versions with dashes in nimble pkgs (#6335) 2017-09-06 15:02:25 +02:00
Andreas Rumpf
2ef65d5cdf C++ codgen: do not emit struct literals if not possible 2017-09-05 09:28:36 +02:00
Araq
c02159dde4 Merge branch 'devel' of github.com:nim-lang/Nim into devel 2017-09-05 01:03:45 +02:00
Araq
21e22624a2 fixes #6294 2017-09-05 01:03:23 +02:00
Zahary Karadjov
c446806f75 improve the debugging experience when line directives are used 2017-09-04 18:17:22 +03:00
Araq
2db96d4f7b make install.txt part of the zips 2017-09-04 11:22:50 +02:00
Ruslan Mustakov
31ecec6473 Allow to modify backend link template (#6173) 2017-09-03 01:09:22 +02:00
Araq
2d8e97ee03 only replace the tilde when followed by a slash; refs #6176 2017-09-03 01:08:23 +02:00
Parashurama
0861249de7 Fix seq.setLen initialisation in VM (#6224) 2017-09-02 22:53:22 +02:00
Dominik Picheta
90fa64501f Implement .nimble-link files in the compiler and add tests for them. 2017-09-02 15:28:25 +01:00
Dominik Picheta
9b465a2361 Add readme to tests. Add fileDir option to testament & create nimble test. 2017-09-02 15:03:39 +01:00
Andreas Rumpf
d456055221 fixes #6306 2017-09-01 16:30:24 +02:00
Andreas Rumpf
a08fb61da9 make tests green again 2017-08-31 13:59:25 +02:00
Andreas Rumpf
8d714d2b02 low/high/of are now overloadable operations 2017-08-30 23:14:33 +02:00
BigEpsilon
6f6e6fe4eb Fix #6295 (#6296) 2017-08-30 14:44:11 +02:00
Andreas Rumpf
920f4acadf fixes #6279 2017-08-29 00:33:46 +02:00