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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
discard """
matrix: "-d:testdef"
output: '''works 34
34
defined
3'''
"""
{.experimental: "codeReordering".}
{.push callconv: stdcall.}
proc bar(x: T)
proc foo() =
bar(34)
whendep()
proc foo(dummy: int) = echo dummy
proc bar(x: T) =
echo "works ", x
foo(x)
when defined(testdef):
proc whendep() = echo "defined"
else:
proc whendep() = echo "undefined"
foo()
type
T = int
when not declared(goo):
proc goo(my, omy) = echo my
when not declared(goo):
proc goo(my, omy) = echo omy
using
my, omy: int
goo(3, 4)
{.pop.}
|