diff --git a/tests/closure/tcapture.nim b/tests/closure/tcapture.nim index 304a76285fb6..ff3490f07eb1 100644 --- a/tests/closure/tcapture.nim +++ b/tests/closure/tcapture.nim @@ -1,6 +1,9 @@ discard """ output: ''' -to be, or not to be''' +to be, or not to be +(v: 1) +(v: 1) +''' joinable: false """ @@ -9,4 +12,15 @@ import sequtils, sugar let m = @[proc (s: string): string = "to " & s, proc (s: string): string = "not to " & s] var l = m.mapIt(capture([it], proc (s: string): string = it(s))) let r = l.mapIt(it("be")) -echo r[0] & ", or " & r[1] \ No newline at end of file +echo r[0] & ", or " & r[1] + +type O = object + v: int +var o = O(v: 1) +var execute: proc() +capture [o]: + execute = proc() = + echo o +execute() +o.v = -1 +execute()