summary refs log tree commit diff stats
path: root/tests/arc
Commit message (Collapse)AuthorAgeFilesLines
* fix #15238 (#15262)cooldome2020-09-041-1/+17
| | | | | * fix_15238 * fix test
* fix #15035 (#15236)cooldome2020-08-281-0/+16
|
* fixes #15130 (#15141)Andreas Rumpf2020-08-011-2/+75
| | | | | * fixes #15130 * you really have to copy from cursors
* fixes #15122 [backport:1.2] (#15139)Andreas Rumpf2020-08-011-0/+28
|
* cursor and mutation tracking fixes (#15113)Andreas Rumpf2020-07-302-5/+59
| | | | | | | | * fixes #15110 * fixes #15096 * prepare varpartitions for cursor inference * new cursor inference begins to work * make tests green
* disable sink inference, only enable it for the stdlib. Reason: better source ↵Andreas Rumpf2020-07-281-0/+1
| | | | code compatibility (#15105)
* fixes #15076 (#15095)Andreas Rumpf2020-07-271-0/+21
|
* fixes a closure iterator memory leaks, progress on #15076Araq2020-07-271-0/+36
|
* fixes #15038 [backport:1.2]Andreas Rumpf2020-07-261-0/+26
|
* fixes #15052Andreas Rumpf2020-07-261-0/+11
|
* Add a test-case for #12990 (#15072)Danil Yarantsev2020-07-252-2/+16
| | | | * closes #12990 * Add a test-case for #12990
* fixes #15044 [backport:1.2]Andreas Rumpf2020-07-231-0/+18
|
* Add a testcase for #14480. Fixes #14480 (#15037)Danil Yarantsev2020-07-221-0/+7
|
* cursor inference bugfixAndreas Rumpf2020-07-201-2/+62
|
* arc: cursors for simple for loop variables (#15008)Andreas Rumpf2020-07-172-4/+29
| | | | | * arc: cursors for simple for loop variables * merged devel
* Show that a variable is cursor in --expandArc (#15002)Clyybber2020-07-172-12/+12
|
* Fix #14994 (#14996)Clyybber2020-07-151-0/+14
| | | | | | | * Fix #14994 * Revert misplaced "optimization" * Typo
* An optimizer for ARC (#14962)Andreas Rumpf2020-07-156-0/+884
| | | | | | | | | | | | | | | | | | | | * WIP: an optimizer for ARC * do not optimize away destructors in 'finally' if unstructured control flow is involved * optimized the optimizer * minor code cleanup * first steps to .cursor inference * cursor inference: big steps to a working solution * baby steps * better .cursor inference * new feature: expandArc for easy inspection of the AST after ARC transformations * added topt_cursor test * adapt tests * cleanups, make tests green * optimize common traversal patterns * moved test case * fixes .cursor inference so that npeg compiles once again * cursor inference: more bugfixes Co-authored-by: Clyybber <darkmine956@gmail.com>
* repr_v2 improvements (#14992)Clyybber2020-07-151-0/+6
| | | | | | | * Support proc in arc repr * Typo * Improve repr for strings and chars
* Fix #14985 (#14988)Clyybber2020-07-151-0/+30
|
* injectdestructors fixes and refactor (#14964)Clyybber2020-07-143-4/+207
| | | | | | | | | | | | | | | | | | | | | | | | | | | * injectdestructors fixes and refactor * Tiny cleanup * Refactor and expand testcase * Closes #14902 by adding testcase * Better naming * Fix test failures * Misc cleanup * Add testcase for #14968 * Better approach; expand testcases * Optimizations and fixes * Add testcase * typo * Tiny cleanup
* Add testcase for #14383 (#14957)Clyybber2020-07-102-0/+36
|
* fixes #14900, this time for real, maybe (#14934)Andreas Rumpf2020-07-081-17/+11
|
* fixes #14900Araq2020-07-081-0/+20
|
* fixes #14899Araq2020-07-081-0/+14
|
* fixes #14402 (#14908)Andreas Rumpf2020-07-081-0/+26
| | | | | * fixes #14402 * added a test case
* Add testcase for #14864 (#14928)Clyybber2020-07-073-0/+13
| | | | | * Add testcase for #14864 * :D
* Add testcase for #14472 (#14921)Clyybber2020-07-061-0/+23
|
* Fix #14396 (#14793)Clyybber2020-07-041-26/+26
| | | | | | | | | | | | | | | | | | | | | | * Correct Left-To-Right evaluation of proc args * Fix CPP backend * Add testcase * closes #14396 * closes #14345 * Improve test and optimize * Improve testcase and optimize literals * Fix bug * Expand testcase and use DFA to optimize * Turn genParams into proc * Turn withTmpIfNeeded into a proc * Cleanup * Fix crash * Better analysis * Cleanup * Trailing newline.. * Fix build * Tiny cleanup Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* scoped memory management (#14790)Andreas Rumpf2020-07-045-13/+214
| | | | | | | * fixes the regressions * closes #13936 * scope based memory management implemented * enabled tcontrolflow.nim test case * final cleanups
* Fix #14568 (#14583)Clyybber2020-06-071-2/+25
| | | | | | | * Fix #14568 * Add testcase * Fix bogus test * Adapt other failing tests * Declarations are always first writes
* fixes #14495 [backport:1.2] (#14496)Andreas Rumpf2020-05-291-5/+43
|
* Small improvements for string and char repr with gc:arc (#14400)Clyybber2020-05-201-2/+2
| | | | | * Small improvements for string and char repr with gc:arc * Fix test
* New "ping-pong" DFA (#14322)Clyybber2020-05-151-0/+103
| | | | | | | | | | | | | | | | | * New ping-pong analysis * Add testcase for #13456 * Remove debugging leftover * Unquote "unstructured controlflow" * Fix typo * Fix exponential complexity in edge cases * Add sanity testcase * Fix
* fix #14333 (#14336)cooldome2020-05-131-1/+17
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fix #14320 (tasyncawait.nim is recently very flaky) + avoid hardcoding ↵Timothee Cour2020-05-131-14/+7
| | | | | | | service ports everywhere + flakyAssert (#14327) * hotfix #14320 tasyncawait.nim is recently very flaky * fix #14327 * add flakyAssert
* close #13071 by adding test: nim cpp -r --gc:arc` segfaults on caught ↵Timothee Cour2020-05-121-0/+16
| | | | AssertionError (#14323)
* fix #14312cooldome2020-05-121-2/+13
|
* fix #14219 (#14225)cooldome2020-05-112-0/+16
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* Fix #14269 (#14286)Clyybber2020-05-091-1/+103
|
* Fix #14270 and add testcases (#14276)Clyybber2020-05-081-0/+30
|
* fix #14243 (#14257)cooldome2020-05-071-1/+15
| | | | | * fix #14243 Co-authored-by: cooldome <ariabushenko@bk.ru>
* Fix the DFA for "unstructured controlflow" (#14263)Clyybber2020-05-071-0/+24
| | | | | * Fix the DFA for "unstructured controlflow" * Add testcase from #14233
* fix #14236 (#14250)cooldome2020-05-071-0/+16
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fixes #14244 (#14248)cooldome2020-05-061-0/+19
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* destructors: don't produce stupid code for 'cast' (#14208) [backport:1.2]Andreas Rumpf2020-05-041-0/+14
| | | | | * destructors: don't produce stupid code for 'cast' * fixes #14207
* fixes #14079 [backport:1.2] (#14163)Andreas Rumpf2020-04-292-2/+30
|
* Error -> Defect for defects (#13908)Jacek Sieka2020-04-281-5/+5
| | | | | | | | | | | | | | * Error -> Defect for defects The distinction between Error and Defect is subjective, context-dependent and somewhat arbitrary, so when looking at an exception, it's hard to guess what it is - this happens often when looking at a `raises` list _without_ opening the corresponding definition and digging through layers of inheritance. With the help of a little consistency in naming, it's at least possible to start disentangling the two error types and the standard lib can set a good example here.
* new implementations for --gc:orc (#14121)Andreas Rumpf2020-04-271-1/+2
| | | | | | | | | * cycle collector: new implementation * cycle collector: make self-adaptive based on its previous effectiveness * cycle collector: added Lins's jump stack to improve traversal from 3*N to 2*N * cycle collector: make tests green * API extensions and bugfixes * code cleanup and use --gc:orc for tasyncawait
* cycle collector (#14071)Andreas Rumpf2020-04-221-0/+183
| | | | * figured out the wrong cycle trace proc problem * cycle collector/break refactorings and minor improvements