Araq
2846156e13
newruntime: raising an exception works but currently leaks memory because currentException global is not an 'owned' ref
2019-04-10 20:34:00 +02:00
Araq
cb4e04d88e
enable more tests
2019-04-10 20:34:00 +02:00
Araq
bc50795d9c
enable most tnewruntime_strutils tests
2019-04-10 15:49:04 +02:00
Araq
a34ce2714a
newruntime: fixes another bug
2019-04-10 13:53:47 +02:00
Araq
6e6a9a721f
destructors: we are cooking now
2019-04-06 17:32:53 +02:00
Andreas Rumpf
efeee326f8
destructors: progress
2019-04-05 12:38:30 +02:00
cooldome
795de374fb
fixes destructor tuple regression #10940 ( #10941 )
...
* fixes #10940
* bug fixes
* fix spacing
2019-04-04 20:46:02 +01:00
Araq
0b96b135f8
simple program works with --newruntime
2019-04-02 10:43:11 +02:00
Andreas Rumpf
bf592c4e94
more destructor based changes ( #10885 )
...
* mark user defined destructors with sfOverriden to simplify the logic
* refactoring in preparation to merge liftings and generic instantiations for destructors
* ast: introduce nkHiddenTryStmt for destructor generation in order to be able to optimize better the code later on
* renamed 'patterns' switch to 'trmacros' as it was totally misleading before
* destructors: introduce tfCheckedForDestructor flag in preparation of strict =destroy checking
* test for invalid/too late destructor introductions
* liftdestructors: make code robust for nimsuggest
* --newruntime works for hello world again
* newruntime: code generation for closures
2019-03-23 00:12:05 +01:00
Arne Döring
97c3b113a5
Size ptr tuple ( #10846 )
...
* fixes #10117
* Add support for recursive tuples
* detect in generics
2019-03-18 11:37:09 +01:00
cooldome
5dea7c5ad7
revert discard in destroyer ( #10840 )
...
* revert discard in destroyer
* disable test
2019-03-15 13:49:32 +01:00
Andreas Rumpf
551d6d00df
make tests green again
2019-03-05 20:05:47 +01:00
Andreas Rumpf
2dc8a32324
make megatest green again
2019-03-05 08:17:30 +01:00
Andreas Rumpf
f907354121
make tests green again
2019-03-04 22:44:23 +01:00
Andreas Rumpf
728ff1004a
gc:destructors: progress
2019-02-28 22:39:24 +01:00
LemonBoy
f39aa1b40b
discard destroys its argument in-place ( #9478 )
2019-02-23 14:03:32 +01:00
Miran
e7878c0d08
add tests for recently closed issues ( #10722 )
2019-02-23 10:41:35 +01:00
Andreas Rumpf
417d27c544
gc:destructors: progress
2019-02-21 12:19:06 +01:00
Andreas Rumpf
7e404c670d
gc:destructors: add first test program
2019-02-19 23:32:41 +01:00
LemonBoy
d83520ec8f
Do not walk into type sub-nodes for cast/conv expr ( #10616 )
2019-02-13 23:30:14 +01:00
cooldome
690f21043d
isLastRead regression fix ( #10463 )
...
* fixes #10462
* add a test
2019-01-28 08:32:14 +01:00
cooldome
1e63f1edb3
destructors: first step towards fixing #9617 ( #10341 )
2019-01-18 08:51:22 +01:00
cooldome
44b4e289d6
destructors: lift type bound operations for case and distinct objects ( #10238 )
2019-01-10 09:25:35 +01:00
Andreas Rumpf
ac785b0623
testament: joinable is now an explicit concept of a test spec
2018-12-11 21:23:24 +01:00
Arne Döring
a5ecbf823f
lots of small changes
2018-12-11 21:23:22 +01:00
Andrii Riabushenko
dc935f2b41
use control flow graph for sink params
2018-12-09 18:32:43 +00:00
Andrii Riabushenko
ae24b87219
Double sink checks
2018-12-08 23:04:38 +00:00
Andrii Riabushenko
43c70a6b12
improve test
2018-12-07 22:25:32 +00:00
Andrii Riabushenko
938d3ffad7
add test
2018-12-05 19:29:14 +00:00
Andrii Riabushenko
4b31d7bb83
move moves
2018-11-29 23:33:48 +00:00
cooldome
5b98afb8a8
Destructors: more moves for tuples ( #9808 )
2018-11-27 18:59:21 +01:00
cooldome
2ac7f52388
Fixes multiple bugs with sink arguments ( #9802 )
...
* fixes #9781
* fix spacing
2018-11-26 09:45:45 +01:00
cooldome
962b2e4b39
Destructors: move into nkTupleConstr and move on tuple unpacking ( #9776 )
2018-11-22 18:33:19 +01:00
Araq
2418d0cac5
fixes #9743
2018-11-19 11:28:06 +01:00
Araq
2eff0ca2b8
added test case for #9594
2018-11-03 22:50:46 +01:00
cooldome
eaca5be9d6
Change the order of compilation passes, transformation is made lazy at code gen ( #8489 )
...
* Ast no transformation
* Add getImplNoTransform to the macros module
* progress on delaying transf
* Fix methods tranformation
* Fix lazy lambdalifting
* fix create thread wrapper
* transform for lambda lifting
* improve getImplTransformed
* Fix destructor tests
* try to fix nimprof for linux
2018-10-18 20:21:25 +02:00
Andreas Rumpf
b39302b0d2
DFA: implement exception handling properly
2018-10-14 17:36:55 +02:00
Andreas Rumpf
fcca59e415
destructors: optimize more assignments into moves; also fixes #9294
2018-10-12 20:36:42 +02:00
Andreas Rumpf
0803b532f4
fixes #9263
2018-10-10 21:00:54 +02:00
Araq
40e01d8549
don't require an implementation for procs marked with .error; activate the move optimizer for destructors
2018-09-29 16:54:59 +02:00
Andreas Rumpf
9a9005622b
make t7346 work again
2018-09-24 16:00:57 +02:00
Andreas Rumpf
c38a608c90
C codegen: support system.move and system.wasMoved
2018-09-24 16:00:57 +02:00
Andreas Rumpf
3c461755e2
enable destructors for top level statements; needs to be documented
2018-09-24 16:00:57 +02:00
Ganesh Viswanathan
b966945ab2
Move
2018-09-14 18:51:05 -05:00
Araq
9047c3f582
workaround the fact that top level statements currently don't produce destructor calls
2018-08-21 21:33:19 +02:00
Andreas Rumpf
32afdc09c6
WIP: strings/seqs based on destructors
2018-07-17 13:19:42 +02:00
Andreas Rumpf
9b31f67859
turn destructors into finalizers
2018-07-05 11:31:27 +02:00
Araq
fa92c519aa
more progress on destructors; removed old destructor based code as it proved confusing
2017-12-01 01:52:00 +01:00
Araq
c00de13e1f
closes #985
2017-11-29 00:19:27 +01:00
Araq
d065931991
destructors: harden the test case
2017-11-29 00:02:49 +01:00