Add a test for mutating closed-over variables in a defer statement
This commit is contained in:
parent
7c853f83c9
commit
a3dab7e726
@ -57,6 +57,14 @@ func main():
|
||||
>> defer_func(yes)
|
||||
>> defer_func(no)
|
||||
|
||||
>> counter := make_counter()
|
||||
>> counter()
|
||||
= 1
|
||||
>> counter()
|
||||
= 2
|
||||
>> counter()
|
||||
= 3
|
||||
|
||||
func defer_func(return_early=no):
|
||||
say("Entering defer_func")
|
||||
defer:
|
||||
@ -68,3 +76,9 @@ func defer_func(return_early=no):
|
||||
|
||||
say("Finished defer_func")
|
||||
|
||||
func make_counter()->func()->Int:
|
||||
i := 1
|
||||
return func():
|
||||
defer: i += 1
|
||||
return i
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user