Я понимаю, что означает restrict
, но меня немного смущает такое использование / синтаксис:
#include <stdio.h>
char* foo(char s[restrict], int n)
{
printf("%s %d\n", s, n);
return NULL;
}
int main(void)
{
char *str = "hello foo";
foo(str, 1);
return 0;
}
Успешно скомпилировано с gcc main.c -Wall -Wextra -Werror -pedantic
Как ограничить работув этом случае и интерпретировать компилятором?
gcc версия: 5.4.0