summary refs log tree commit diff stats
path: root/tests/destructor/tmisc_destructors.nim
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2020-07-15 23:00:06 +0200
committerGitHub <noreply@github.com>2020-07-15 23:00:06 +0200
commitc5358b0d4b1d27db04b974a0183c9b7312bc7bdc (patch)
treeca3a71953358c8f9475188045ba61c5dfb5caf87 /tests/destructor/tmisc_destructors.nim
parent813dd1b670b953b0ac8348b04079faadace46c29 (diff)
downloadNim-c5358b0d4b1d27db04b974a0183c9b7312bc7bdc.tar.gz
An optimizer for ARC (#14962)
* 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>
Diffstat (limited to 'tests/destructor/tmisc_destructors.nim')
-rw-r--r--tests/destructor/tmisc_destructors.nim6
1 files changed, 4 insertions, 2 deletions
diff --git a/tests/destructor/tmisc_destructors.nim b/tests/destructor/tmisc_destructors.nim
index 73c54eab3..082cb0f78 100644
--- a/tests/destructor/tmisc_destructors.nim
+++ b/tests/destructor/tmisc_destructors.nim
@@ -21,11 +21,13 @@ proc `=sink`(dest: var Foo, src: Foo) =
 proc `=`(dest: var Foo, src: Foo) =
   assign_counter.inc
 
+proc createFoo(): Foo = Foo(boo: 0)
+
 proc test(): auto =
-  var a, b: Foo
+  var a, b = createFoo()
   return (a, b, Foo(boo: 5))
 
-var (a, b, _) = test()
+var (ag, bg, _) = test()
 
 doAssert assign_counter == 0
 doAssert sink_counter == 0