__restrict compiler flag?
I thought the __restrict flag meant that the pointer couldn't be changed...but it can it seems......can somebody tell me clearly what the __restrict flag does?
Code:
#include <stdio.h>
#include <al/etl.h>
#include <sfl.h>
char *blar( char *__restrict__ sz )
{
char *s = malloc( NAME_MAX );
ASSERT( s );
strncpy( s, "Whoa whoa whoa", NAME_MAX );
sz = s;
return sz;
}
int main( void )
{
char *__restrict hello = "How are you?";
hello = blar( hello );
puts( hello );
free( hello );
return 0;
}