summary refs log tree commit diff stats
path: root/tests/gensym
ModeNameSize
-rw-r--r--tgensym.nim148log stats plain blame
-rw-r--r--tgensymgeneric.nim1128log stats plain blame
55ae07b8 ^
1
2
3
4
5
6
7
8
9
10
11
12
13







                                                                              
 



                      
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]