Commit graph

513 commits

Author SHA1 Message Date
Andreas Rumpf
4389409e26 fix merge conflict 2018-07-18 09:46:30 +02:00
Andreas Rumpf
32afdc09c6 WIP: strings/seqs based on destructors 2018-07-17 13:19:42 +02:00
Andreas Rumpf
74bf316619 more progress on destructor based strings 2018-07-13 21:15:47 +02:00
Yuriy Glukhov
dfe3f16022 Don't depend on string.h in codegen (#8299) 2018-07-13 17:41:59 +02:00
Andreas Rumpf
5b59852406 system.substr is not implemented with compilerProcs anymore 2018-07-11 16:39:16 +02:00
Andreas Rumpf
ce01472ff3 refactorings in preparations for the new runtime 2018-07-10 10:39:53 +02:00
Araq
8bcaee1fdf make tmemfile2 work again 2018-07-06 15:53:32 +02:00
Andreas Rumpf
9b31f67859 turn destructors into finalizers 2018-07-05 11:31:27 +02:00
Andreas Rumpf
e455023902 Merge branch 'devel' into araq-devel 2018-07-01 16:24:56 +02:00
LemonBoy
64c84a7d11 Fix codegen for mInSet magic and empty sets (#8140)
Fixes #8041
2018-06-29 15:10:51 +02:00
Andreas Rumpf
b5a96d28c7 codgen refactoring: prepare for alternative string/seq implementations 2018-06-29 11:34:39 +02:00
LemonBoy
8508dc46c8 Fix minor codegen issue with static data types 2018-06-19 17:12:51 +02:00
Yuriy Glukhov
7a4b343d8d Added NIM_STRLIT_FLAG to seq literals 2018-06-12 12:39:54 +03:00
LemonBoy
ac0f986008 Correct field lookup in concept types
Fixes #6770
2018-06-12 00:36:43 +03:00
Araq
8e9551b1c7 fixex merge conflicts 2018-06-08 19:50:36 +02:00
Andreas Rumpf
bf394ed1a1
Merge pull request #7550 from jangko/fix4799
fixes #4799, varargs now can accept polymorphic types
2018-06-06 22:04:54 +02:00
Andreas Rumpf
1593b9cac4
Merge pull request #7967 from nitely/empty_openarray_7904
support empty toOpenArray
2018-06-06 11:06:57 +02:00
nitely
ba39f359aa check bounds instead of index 2018-06-05 20:22:27 -03:00
andri lim
80107b360c add more test to 4799 2018-06-05 09:18:20 +07:00
Andreas Rumpf
9ab92824f6 AST change: keep nkStaticStmt in the AST for incremental compilation support 2018-06-03 20:16:29 +02:00
Andreas Rumpf
a4e2b0c153 platform.nim doesn't use globals anymore; prepare msgs.nim for not using globals 2018-05-18 15:18:00 +02:00
Andreas Rumpf
bf6c2c5ccf preparations of making compiler/msgs.nim free of global variables 2018-05-17 15:21:22 +02:00
Yuriy Glukhov
cfe40a3e6e Merge branch 'devel' into yield-in-try 2018-05-15 19:54:52 +03:00
Andreas Rumpf
328e7a1005 options.nim: no global variables anymore 2018-05-13 17:52:21 +02:00
Andreas Rumpf
297038f704 move more globals into the config object 2018-05-13 14:19:42 +02:00
Andreas Rumpf
1284827df2 C code generator compiles again 2018-05-12 23:45:51 +02:00
Yuriy Glukhov
d71f69ab50 Closure iter transformation 2018-05-09 22:25:27 +03:00
Araq
851d2a266d introduce --laxStrings:on switch 2018-04-30 19:57:52 +02:00
Andreas Rumpf
4948cf3b4c make the build more robust 2018-04-30 11:54:26 +02:00
Andreas Rumpf
9b8603adcd strutils: code cleanups and do not rely on the terminating binary zero anymore 2018-04-28 21:59:43 +02:00
Andreas Rumpf
f64f9e50cc correct comparisons for nil strings/seqs 2018-04-28 15:13:44 +02:00
Andreas Rumpf
13a380bca6 make tests green 2018-04-28 13:10:45 +02:00
Andreas Rumpf
aded62520b string to cstring conversions produce the empty C string for nil; this will be consistent with alternative string implementations 2018-04-28 11:12:23 +02:00
Andreas Rumpf
e3379770b2 codegen: support nil strings/seqs in more places 2018-04-28 09:56:10 +02:00
Andreas Rumpf
7c538b26ad nil in string concats does not produce crashes anymore 2018-04-27 21:33:05 +02:00
Andreas Rumpf
ce36b8efd6 setLen doesn't crash on nil strings/seqs anymore 2018-04-27 11:07:40 +02:00
Andreas Rumpf
ef1b547f35 'add' on a nil sequence doesn't produce a crash anymore 2018-04-27 09:57:20 +02:00
Jacek Sieka
72dfe176f5 remove dead code elimination option (#7669) 2018-04-23 11:02:38 +02:00
Andreas Rumpf
33b69f0ed0 refactoring: make FileIndex a distinct type; make line information an uint16; fixes #7654 2018-04-21 08:13:37 +02:00
Andreas Rumpf
47335aab41 introduce nkTupleConstr AST node for unary tuple construction; breaking change 2018-04-13 17:45:58 +02:00
Jacek Sieka
85e21158db Cleanups 20180401 (#7458) 2018-04-12 17:35:10 +02:00
Araq
aa6353e4fa fixes #6843 2018-04-06 13:10:22 +02:00
Andreas Rumpf
d837362216 C codegen: preparations for different seq and string implementations 2018-04-03 10:25:20 +02:00
Andreas Rumpf
cc6fe6e578 fixes codegen for nil cstrings 2018-04-02 17:00:35 +02:00
Araq
1d9343080d added toOpenArray builtin for zero-copy slices; syntax sugar yet to come 2018-03-24 20:26:34 +01:00
cooldome
e2c2ae8e7e fixes #7392 (#7395) 2018-03-23 13:28:22 +01:00
cooldome
70b28a39fe Codegen: use type forward declarations more aggresively. Fixes #7339 (#7340)
Do not emit object definition it if used only by ref or ptr
2018-03-16 16:21:03 +01:00
Andreas Rumpf
08282b1355 make 'memset' calls more robust; refs #7341 2018-03-16 15:44:40 +01:00
Andreas Rumpf
c99f952dfb basic 'lent T' test works 2018-01-21 03:04:22 +01:00
jcosborn
d0a9fac362 avoid creating temporary in genObjConstr if possible (#7032) 2018-01-11 02:01:51 +01:00