summary refs log tree commit diff stats
path: root/tests/generics/tgeneric_closure.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/generics/tgeneric_closure.nim')
-rw-r--r--tests/generics/tgeneric_closure.nim37
1 files changed, 0 insertions, 37 deletions
diff --git a/tests/generics/tgeneric_closure.nim b/tests/generics/tgeneric_closure.nim
deleted file mode 100644
index 7198dce96..000000000
--- a/tests/generics/tgeneric_closure.nim
+++ /dev/null
@@ -1,37 +0,0 @@
-# Test to ensure TEventHandler is '.closure'
-
-# bug #1187
-
-type
-  TEventArgs* = object
-    skip*: bool
-  TEventHandler[T] = proc (e: var TEventArgs, data: T) {.closure.}
-  TEvent*[T] = object
-    #handlers: seq[TEventHandler[T]] # Does not work
-    handlers: seq[proc (e: var TEventArgs, data: T) {.closure.}] # works
-
-  TData = object
-    x: int
-
-  TSomething = object
-    s: TEvent[TData]
-
-proc init*[T](e: var TEvent[T]) =
-  e.handlers.newSeq(0)
-
-#proc add*[T](e: var TEvent[T], h: proc (e: var TEventArgs, data: T) {.closure.}) =
-# this line works
-proc add*[T](e: var TEvent[T], h: TEventHandler[T]) =
-  # this line does not work
-  e.handlers.add(h)
-
-proc main () =
-  var something: TSomething
-  something.s.init()
-  var fromOutside = 4711
-
-  something.s.add() do (e: var TEventArgs, data: TData):
-    var x = data.x
-    x = fromOutside
-
-main()