LINUX.ORG.RU

История изменений

Исправление shdown, (текущая версия) :

Но есть GNU C, лол. А шланг поддерживает GNU C++ тоже (__restrict__ — расширение GNU C++):

void complement(const unsigned *__restrict__ src, unsigned *__restrict__ dst, int n)
{
    for (int i = 0; i < n; ++i) {
        dst[i] = ~src[i];
    }
}
$ clang++ -std=gnu++14 -Wall -Wextra -O3 -c foo.cpp

Same for __attribute__((…)), etc.

Исходная версия shdown, :

Но есть GNU C, лол. А шланг поддерживает GNU C++ тоже (__restrict__ — расширение GNU C++):

void complement(const unsigned *__restrict__ src, unsigned *__restrict__ dst, int n)
{
    for (int i = 0; i < n; ++i) {
        dst[i] = ~src[i];
    }
}
$ clang++ -std=gnu++14 -Wall -Wextra -O3 -c foo.cpp