Araq
4f93669754
fixes #11065
2019-04-22 10:11:37 +02:00
Araq
665fcb12dd
fixes #11073
2019-04-22 08:05:16 +02:00
Andreas Rumpf
44ec66bd48
fixes #11053
2019-04-19 18:02:43 +02:00
Araq
7640a230fc
fixes #11050
2019-04-17 17:26:59 +02:00
Araq
ce024a73bf
make move-analysis smarter; see tuse_ownedref_after_move test case
2019-04-16 10:35:43 +02:00
Araq
045e026d0e
dfa.nim: track object/tuple field accesses more precisely; sink(o.x); sink(o.y) needs to compile; activate the tuple unpacking transf.nim bugfix
2019-04-16 10:35:43 +02:00
Clyybber
2f56dd6b2b
Extend the fix for #11018 to strings ( #11031 )
...
* Extend the fix for #11018 to strings
* Fix testcase
2019-04-15 17:06:31 +02:00
Clyybber
499fa3f3dc
Fixes #11018 ( #11019 )
2019-04-14 23:34:19 +02:00
cooldome
fdc3f54f97
fix reraise ( #11017 )
2019-04-13 10:50:30 +02:00
Araq
572735bbfa
fixes #11004
2019-04-12 13:28:12 +02:00
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