Функции и объекты не должны быть определены с помощью внешнего редактирования, если они указаны только в одном модуле преобразования
Эта проверка деактивирована в Polyspace по умолчанию® по мере анализа You Code. Смотрите Checkers Deactivated in Polyspace как You Code Default Analysis (Polyspace Bug Finder Access).
Функции и объекты не должны определяться с помощью внешних редактирований, если они указаны только в одном модуле преобразования.
Податливость этому правилу избегает путаницы между вашим идентификатором и идентичным идентификатором в другом модуле перевода или библиотеке. Если вы ограничиваете или уменьшаете видимость объекта, предоставляя ему внутреннее редактирование или отсутствие редактирования, вы или кто-то другой с меньшей вероятностью получите доступ к объекту непреднамеренно.
Флажки проверки правил:
Объекты, которые определены в возможности без static спецификатор, который используется только в одном файле.
Функции, которые заданы без static спецификатор, но вызываемый только в одном файле.
Если вы намерены использовать объект или функцию только в одном файле, объявите его статическим.
Если ваш код не содержит main и вы используете такие опции, как Variables to initialize (-main-generator-writes-variables) со значением custom чтобы явным образом задать набор переменных для инициализации, средство проверки не помечает эти переменные. Проверка предполагает, что в реальном приложении файл, содержащий main необходимо инициализировать переменные в дополнение к любому файлу, который в данный момент использует их. Поэтому переменные используются в нескольких модулях преобразования.
Polyspace Bug Finder™ и Polyspace Code Prover™ по-разному проверить это правило кодирования. Анализы могут привести к различным результатам.
Переменные variable_name должна иметь внутреннее редактирование.
Функциональные function_name должна иметь внутреннее редактирование.
Если вы ожидаете нарушения правил, но не видите его, обратитесь к разделу «Стандартные нарушения кодирования не отображаются».
| Группа: Декларации и определения |
| Категория: Консультационные |
| Категория СМЖЛ: Консультационная |