Files
Nim/tests/stdlib/tsince.nim
metagn c694d8e4fd custom pragmas: correct error condition, remove outdated symkind whitelist (#21653)
* test not restricting custom pragma applied symbols

fixes #21652

* fix other test

* different patch

* fix tests

* actually test #18212 and other routines
2023-04-13 12:50:43 +02:00

33 lines
588 B
Nim

import std/private/since
import std/assertions
proc fun1(): int {.since: (1, 3).} = 12
proc fun1Bad(): int {.since: (99, 3).} = 12
proc fun2(): int {.since: (1, 3, 1).} = 12
proc fun2Bad(): int {.since: (99, 3, 1).} = 12
doAssert fun1() == 12
doAssert declared(fun1)
doAssert not declared(fun1Bad)
doAssert fun2() == 12
doAssert declared(fun2)
doAssert not declared(fun2Bad)
var ok = false
since (1, 3):
ok = true
doAssert ok
ok = false
since (1, 3, 1):
ok = true
doAssert ok
since (99, 3):
doAssert false
template fun3(): int {.since: (1, 3).} = 12
doAssert declared(fun3)