When we have constant data, e.g. in the form
double const * const
ordouble const *
does this give the compiler the same information as __restrict
/ does it have the same effect?
As far as I understand, __restrict
basically promises, that the data pointed to will not be altered by/through another pointer. So, a pointer to a const value makes kind of the same promise, doesn't it?
__restrict
here refers to the keyword in Visual Studio. I guess the meaning is similar in GCC.