Правило 8.14 MISRA C:2012

Ограничить спецификатор типа не должен использоваться

Описание

Управляйте определением

Ограничить спецификатор типа не должен использоваться.

Объяснение

Когда вы используете спецификатор restrict тщательно, он повышает эффективность кода, сгенерированного компилятором. Это может также улучшить статический анализ. Однако при использовании спецификатора restrict, трудно убедиться, что области памяти, управляемые на двумя или больше указателями, не накладываются.

Реализация Polyspace

Средство проверки правила отмечает все использование спецификатора restrict.

Обменивайтесь сообщениями в отчете

Ограничить спецификатор типа не должен использоваться.

Поиск и устранение проблем

Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.

Примеры

развернуть все

void f(int n, int * restrict p, int * restrict q)
{
}

В этом примере отмечается оба использования спецификатора restrict.

Проверяйте информацию

Группа: объявления и определения
Категория: необходимый
Категория AGC: консультация
Язык: C99

Введенный в R2014b