new move analyser2 (#20471)

* produce better code for closure environment creation
* new 'first write' analysis; 
* scope based move analyser
* code cleanup

Co-authored-by: ringabout <43030857+ringabout@users.noreply.github.com>
This commit is contained in:
Andreas Rumpf 2022-10-01 16:46:51 +02:00 • committed by GitHub
commit 8d47bf1822
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
19 changed files with 472 additions and 684 deletions

View file

@ -15,8 +15,7 @@ proc initO(): O =
O(initialized: true)
proc pair(): tuple[a, b: O] =
result.a = initO()
result.b = initO()
result = (a: initO(), b: initO())
proc main() =
discard pair()