Files
Nim/tests/trmacros/tcse.nim
2014-04-06 22:05:42 +02:00

14 lines
255 B
Nim

discard """
output: "4"
"""
template cse{f(a, a, x)}(a: expr{(nkDotExpr|call|nkBracketExpr)&noSideEffect},
f: expr, x: varargs[expr]): expr =
let aa = a
f(aa, aa, x)+4
var
a: array[0..10, int]
i = 3
echo a[i] + a[i]