Стандартная библиотека шаблонов C++, блокирующая ошибки

Проблема

Анализ останавливается с сообщением об ошибке, которое обращается к шаблонам классов, таким как map и vector от Стандартной библиотеки шаблонов.

Часто, сообщение об ошибке утверждает, что или оператор не может быть найден или больше чем одно соответствие оператора данными операндами.

Причина

Программное обеспечение Polyspace® обеспечивает эффективное внедрение всех шаблонов классов от Стандартной библиотеки шаблонов (STL). Если ваш исходный код повторно объявляет шаблоны, анализ может остановиться с сообщением об ошибке.

Решение

Использовать ваши собственные реализации шаблонов от Стандартной библиотеки шаблонов:

  1. Отключите реализации Polyspace с помощью опции No STL stubs (-no-stl-stubs).

  2. Добавьте папки, содержащие ваши реализации к верификации.

Примечание

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