Original Post
I'm a little confused about the rules regarding restricted pointers. Maybe someone out there can help me out.
1. Is it legal to define nested restricted pointers as follows:
2. Is it legal to derive a restricted pointer value as follows:
Thanks!
Andrew
1. Is it legal to define nested restricted pointers as follows:
{ int* restrict a; int* restrict b; a = malloc(sizeof(int)); // b = a; <-- assignment here is illegal, needs to happen in child block // *b = rand(); while(1) { b = a; // Is this legal? Assuming 'b' is not modified outside the while() block *b = rand(); }}2. Is it legal to derive a restricted pointer value as follows:
{ int* restrict c; int* restrict d; c = malloc(sizeof(int*)*101); d = c; for(int i = 0; i < 100; i++) { *d = i; d++; } c = d; // c is now set to the 101 element, is this legal assuming d isn't accessed? *c = rand();}Thanks!
Andrew