summary refs log tree commit diff stats
path: root/tests/pragmas/tpushexperimental.nim
blob: 301419f607dcd81c3e772c08dd24cbf4dc8e9f33 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
discard """
  output: '''0 1
1 2
2 3
0 1
1 2
2 3
3 5'''
"""

import mpushexperimental

main(12)
class="n">N: static[int]; T: SomeFloat] = distinct array[0..(M*N - 1), T] let a = new Matrix[2,2,float] let b = new Matrix[2,1,float] proc foo[M,N: static[int],T](a: ref Matrix[M, N, T], b: ref Matrix[M, N, T])= discard foo(a, a) proc bar[M,N: static[int],T](a: ref Matrix[M, M, T], b: ref Matrix[M, N, T])= discard bar(a, b) bar(a, a) proc baz[M,N: static[int],T](a: ref Matrix[N, N, T], b: ref Matrix[M, N, T])= discard baz(a, a) baz(a, b)