Commit Graph

176 Commits

Author SHA1 Message Date
Andreas Rumpf
f7f3a25be8 first steps of making 'opt' a first class type for Nim 2017-09-25 13:19:36 +02:00
Andreas Rumpf
1a61c4d46d first implementation of the 'func' keyword 2017-09-23 23:22:53 +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
Parashurama
4fdf7f2ea3 fix VM intsize for 32bits and smaller targetOS. (#6211)
This commit change the default behaviour of VM int/uint always being
64bits and make int/uint on VM behave identically to compiled code.

This insert 'opcNarrowU' or 'opcNarrow' opcode on Int/Uint operations
when needed to simulate smaller Int/Uint on VM.
2017-08-10 14:34:57 +02:00
Parashurama
f063943d5f Vm fix zero extend proc ze/ze64 && toU32/toU16/toU8 (#5988)
* fixes ze/ze64 procs in VM.
* fixes toU8/toU16/toU32.
* add tests for ze/ze64 toU32/toU16/toU8 procs
2017-08-03 10:58:45 +02:00
Arne Döring
52f092d02b Lineinfo change (#6084) 2017-07-17 08:12:15 +02:00
Parashurama
f603e1b268 fix logical right shift in VM. (#5916) 2017-06-05 17:25:04 +02:00
Zahary Karadjov
cbf66e99a8 Working test cases for the sophisticated matrix library example from the manual
Fixed the dot operator when used within return types (see tgenericdotrettype)
Fixed the matching of generic concepts aliases used with the implicit generics style
2017-03-24 16:59:47 +02:00
Andreas Rumpf
e672208b82 fixes #5221 2017-02-05 09:41:47 +01:00
Andreas Rumpf
c4dd9dc77e fixes #5269 2017-02-05 08:51:43 +01:00
Araq
6f260dd45c make vmgen more robust in the context of 'nim check' 2016-12-31 02:04:27 +01:00
Araq
e6c5622aa7 removed tyArrayConstr completely from the compiler; introduced tyAlias instead in preparation for further bugfixes 2016-11-14 23:18:30 +01:00
andri lim
bd560d6a4e fixes #4915 2016-10-27 12:22:12 +07:00
Andreas Rumpf
2b0e9aa167 fixes regression 2016-08-26 16:48:42 +02:00
Jacek Sieka
3cd4cf4320 remove unused stuff 2016-08-09 22:54:27 +08:00
Andreas Rumpf
4a96a3d9a1 attempt to fix #4065 2016-08-04 19:34:13 +02:00
Andreas Rumpf
39ebe2175b compiler almost free of deprecated expr/stmt names 2016-07-30 16:34:42 +02:00
Andreas Rumpf
60b187513e stdlib and compiler don't use .immediate anymore 2016-07-29 23:51:01 +02:00
Andreas Rumpf
b7c1be03c8 added system.newSeqOfCap for improved efficiency 2016-07-15 17:04:14 +02:00
Andreas Rumpf
8dd27a6699 fixes #2730 2016-07-13 01:06:33 +02:00
Andreas Rumpf
857b0c8d4c fixes #4462 2016-07-08 10:52:04 +02:00
Andreas Rumpf
b47d9b7b91 fixes #4371 2016-07-08 10:34:12 +02:00
Andreas Rumpf
17d97462cf Merge branch 'devel' of github.com:nim-lang/Nim into devel 2016-07-06 16:48:14 +02:00
Andreas Rumpf
e73fd64f38 fixes #537 2016-07-06 16:48:00 +02:00
Yuriy Glukhov
09783c3fd0 Fixed vm codegen for a call with compile-time args. Fixes #4412. 2016-07-06 14:39:57 +03:00
Andreas Rumpf
e8d507c859 system. for cstrings uses value comparisons, not reference comparisons 2016-06-02 16:38:20 +02:00
Andreas Rumpf
4180f59b27 fixes #1713 2016-05-30 16:24:52 +02:00
Andreas Rumpf
d3fe4a2db1 Merge pull request #4113 from jcosborn/gettypeinst
getTypeInst
2016-05-28 17:14:52 +02:00
Andreas Rumpf
ac1a753aff fixes #3956 2016-05-11 21:20:53 +02:00
James Osborn
0356f53b56 getTypeInst and getTypeImpl mostly working now and added test 2016-05-04 00:24:44 -05:00
James Osborn
d462cca21f added getTypeInst which includes generic parameters 2016-05-04 00:24:44 -05:00
Andreas Rumpf
cbcdf12d2c fixes #3731 2016-04-04 10:16:15 +02:00
Andreas Rumpf
0acdaea334 fixes #3561, fixes #2409 2016-04-04 02:45:43 +02:00
Andreas Rumpf
86e79f5cec fixes #3804 2016-04-04 01:41:14 +02:00
Andreas Rumpf
6e53300f83 fixes #3973 2016-04-03 22:51:22 +02:00
Andreas Rumpf
1463b0c954 fixes #3916 2016-02-29 16:45:52 +01:00
Hans Raaf
0634486689 Fixed deprecation warnings while Nim compiles.
I just removed unsigned and changed a writeLn() call to writeLine() to
avoid the remaining deprecation warnings.
2016-01-18 18:14:50 +01:00
Andreas Rumpf
c1627354d1 first implementation of the new lambda-lifting pass; barely anything works 2015-12-26 00:42:30 +01:00
Araq
2aff716134 os.walkDir is available at compile time 2015-11-10 15:31:21 +01:00
Araq
c97cbe7abd fixes #3299 2015-10-15 09:31:54 +02:00
Araq
5a003532d0 fixes #2473; cleanup of some tests 2015-09-30 21:13:13 +02:00
Araq
6268bf33a2 fixes #3387 2015-09-29 19:30:46 +02:00
Araq
f937637a92 fixes #3357 2015-09-23 21:46:33 +02:00
Yuriy Glukhov
04a4f35400 VM produces objects. 2015-09-05 14:18:37 +03:00
Yuriy Glukhov
49869a2b10 when nimvm stmt proof of concept 2015-09-04 20:50:29 +03:00
Araq
695e2e970e implemented macros.getImpl 2015-08-21 02:34:34 +02:00
Araq
cc934a1a1b VM: repl supports global variables properly" 2015-08-16 13:41:27 +02:00
Andreas Rumpf
b3abcaf9e8 Merge pull request #3177 from zah/generic-types-in-macros
Generic types in macros
2015-08-14 01:51:25 +02:00
Araq
799e0f3274 fixes #3066 2015-08-09 23:53:22 +02:00
Araq
50861792f4 fixes #1329 2015-08-09 23:07:53 +02:00