summary refs log tree commit diff stats
path: root/tests/stdlib/tsince.nim
blob: 14dd09c1598ad7838777eb8065edd0e09ddc73e2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import std/private/since

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

when false:
  # pending https://github.com/timotheecour/Nim/issues/129
  # Error: cannot attach a custom pragma to 'fun3'
  template fun3(): int {.since: (1, 3).} = 12