Commit Graph

93 Commits

Author SHA1 Message Date
Clyybber
0c869eaa47 Fix destructor injections for global variables (#11230)
* attach global destructors at end of mainModule
* Add testcase
* Minor cleanup
* Inject topLevelVar temporaries' destructors early
* Fix megatest
2019-05-13 08:28:33 +02:00
cooldome
f4c9eb1774 fixes #11204 (#11207) 2019-05-09 16:45:56 +02:00
Miran
ce152ed91f iterators: several small fixes (#11162)
* fix pairs, mpairs, mitems for cstring for JS backend
* add mutation check for pairs and mpairs for strings and seqs
* change the assertion message - modifying (changing elements) is not
  a problem, changing the length is
2019-05-04 23:02:50 +02:00
cooldome
d3db189eb4 Destructor lifting fixes #11149 (#11163)
* fixes #11149

* add test
2019-05-04 22:34:37 +02:00
Araq
9ad96b58e6 decent borrow check for --newruntime 2019-05-02 11:46:38 +02:00
Araq
6e3a4ebf6a added unown test case 2019-04-29 13:36:00 +02:00
Andreas Rumpf
55aa2129b5 make twidgets example green (#11135) 2019-04-28 13:28:18 +02:00
Andreas Rumpf
46ce797231 newruntime: progress... 2019-04-27 09:36:34 +02:00
Araq
b350a9fc52 preparations to make the twidgets test work 2019-04-26 15:44:06 +02:00
Andreas Rumpf
eb9043c0e9 fixes #11095 (#11104)
* fixes #11095
2019-04-25 07:59:34 +02:00
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