#include typedef struct point{ int x; int y; } point_t; int times2(int k, int t){ return 2*k*t; } void f(){ int x=0; x++; } void main(){ int a=2; int *b=&a; void (*g)(void)=&f; $proc p=$spawn f(); int c[2][2]; $domain(2) dom=($domain(2)){1 .. 4#2, 1 .. 4#2}; point_t pt; pt.x=1; pt.y=pt.x+5; $wait(p); p=$spawn g(); $wait(p); a=times2(a*a, a); a=$next_time_count(); *b=$next_time_count(); $for(int i, j: dom) c[(i-1)/2][(j-1)/2] = i*10 + j; dom=($domain(2)){0 .. 1, 0 .. 1}; $parfor(int i, j: dom) times2(i, j); b=(int*)$malloc($root, sizeof(int)*2); b[0]=c[0][0]; b[1]=c[1][1]; $free(b); }