17 lines
292 B
Nim
17 lines
292 B
Nim
discard """
|
|
output: '''2 3'''
|
|
"""
|
|
|
|
# bug #4097
|
|
|
|
var i {.compileTime.} = 2
|
|
|
|
template defineId*(t: typedesc): stmt =
|
|
const id {.genSym.} = i
|
|
static: inc(i)
|
|
proc idFor*(T: typedesc[t]): int {.inline, raises: [].} = id
|
|
|
|
defineId(int8)
|
|
defineId(int16)
|
|
|
|
echo idFor(int8), " ", idFor(int16)
|