// section 6.7.3.1

void f(int n, int * restrict p, int * restrict q) {
	while(n-- > 0)
		*p++ = *q++;
}

typedef struct {int n; float * restrict v;} vector;
vector newvector(int n){
	vector t;
	t.n = n;
	t.v = malloc(n * sizeof *t.v);
	return t;
}
