exponenta event banner

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

Расширения языка не должны использоваться

Описание

Определение правила

Расширения языка не должны использоваться.

Объяснение

Если программа использует расширения языка, ее переносимость снижается. Даже если вы документируете расширения языка, документация может не описать поведение при любых обстоятельствах.

Внедрение Polyspace

Средство проверки правил помечает эти расширения языка в зависимости от версии стандарта C, используемой в анализе. Посмотрите C standard version (-c-version).

  • C90:

    • long long int тип, включая константы

    • long double напечатать

    • inline ключевое слово

    • _Bool ключевое слово

    • short long int напечатать

    • Шестнадцатеричные константы с плавающей запятой

    • Универсальные имена символов

    • Назначенные инициализаторы

    • Объявления локальных меток

    • typeof оператор

    • Отбросы на объединение

    • Составные литералы

    • Операторы и объявления в выражениях

    • __func__ предопределенный идентификатор

    • _Pragma оператор предварительной обработки

    • Список макросов с переменными аргументами

  • C99:

    • short long int напечатать

    • Объявления локальных меток

    • typeof оператор

    • Отбросы на объединение

    • Операторы и объявления в выражениях

Поиск неисправностей

Если вы ожидаете нарушения правила, но не видите его, обратитесь к разделу Нарушения стандартов кодирования не отображаются.

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

Группа: Стандартная среда C
Категория: Консультационные услуги
СМЖЛ Категория: Консультативные услуги
Представлен в R2014b