Настоящий стандарт устанавливает общие требования к безопасному компилятору программ на языках С и С++ (стандарты [1] и [2] соответственно). Целью работы безопасного компилятора является не вносить в бинарный код программы ошибки, которых не было в исходном коде программы и которые могут появиться в ходе компиляции, в том числе в ходе выполнения оптимизаций кода программы. Настоящий стандарт задает требования к динамической компоновке и загрузке программ, выполнение которых необходимо для поддержки ряда возможностей безопасного компилятора. Настоящий стандарт уточняет требования к мерам по разработке безопасного программного обеспечения, реализуемые при выполнении конструирования и комплексирования программного обеспечения, в части требований к используемым инструментальным средствам (безопасному компилятору). Настоящий стандарт определяет требования к функциям безопасного компилятора и задает нефункциональные требования к безопасному компилятору, задает требования к методике проверки требований к безопасному компилятору.
Содержание:
1 Область применения
2 Нормативные ссылки
3 Термины и определения
4 Общие требования к безопасному компилятору
5 Требования к функциям безопасного компилятора
6 Требования к производительности генерируемого кода
7 Проверка выполнения требований к безопасному компилятору
Приложение А (справочное) Таблица соответствия функций безопасности компилятора 3 класса и опций компилятора GCC
Приложение Б (справочное) Пример построения квалификационных тестов для проверки требований раздела 5