Поддерживает ли clang ++ __restrict?

Следующий код компилируется с g ++ 4.7.1, но не clang 3.1

struct A
{
int foo();
};

int A::foo() __restrict
{
return 0;
}int main(int argc, char * argv[])
{
A a;
return a.foo();
}

Поддерживает ли Clang __restrict? или это использует определенный синтаксис?

0

Решение

У меня нет clang 3.1 под рукой, но под clang 4.1 я получаю эту ошибку:

t.cpp:6:8: error: out-of-line definition of 'foo' does not match any declaration
in 'A'
int A::foo() __restrict
^~~
t.cpp:3:7: note: member declaration nearly matches
int foo();
^
1 error generated.

clang 4.1 успешно компилирует его, если я изменил объявление A::foo к этому:

  int foo() __restrict;
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]