Совместимое объявление должно быть видимо, когда объект или функция с внешней связью будут заданы
Совместимое объявление должно быть видимо, когда объект или функция с внешней связью будут заданы.
Если объявление видимо, когда объект или функция заданы, это позволяет компилятору проверять, что объявление и определение совместимы.
Это правило с MISRA C:2012 Rule 8.5
осуществляет практику объявления объекта (или функция) в заголовочном файле и включая заголовочный файл в исходных файлах, которые задают или используют объект (или функция).
Средство проверки правила обнаруживает ситуации где:
Объект или функция заданы без предыдущего объявления.
Существует неверный тип данных между объектным или объявлением функции и определением. Такое несоответствие также вызывает ошибку компиляции.
Глобальное определение переменной variable_name
не имеет никакого предыдущего объявления.
Функциональный function_name
не имеет никакого видимого совместимого прототипа в определении.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: объявления и определения |
Категория: необходимый |
Категория AGC: консультация |
Язык: C90, C99 |
MISRA C:2012 Rule 17.3
| MISRA C:2012 Rule 8.2
| MISRA C:2012 Rule 8.3
| MISRA C:2012 Rule 8.5