123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- discard """
- targets: "c js"
- """
- import std/assertions
- block: # bug #4299
- proc scopeProc() =
- proc normalProc() =
- discard
- proc genericProc[T]() =
- normalProc()
- genericProc[string]()
- scopeProc()
- block: # bug #12492
- proc foo() =
- var i = 0
- proc bar() =
- inc i
- bar()
- doAssert i == 1
- foo()
- static:
- foo()
- block: # bug #10849
- type
- Generic[T] = ref object
- getState: proc(): T
- proc newGeneric[T](): Generic[T] =
- var state: T
- proc getState[T](): T =
- state
- Generic[T](getState: getState)
- let g = newGeneric[int]()
- let state = g.getState()
- doAssert state == 0
|