exponenta event banner

Зафиксируйте ошибки соединения Polyspace, связанные с блокирующей стандартной библиотекой шаблонов C++

Проблема

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

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

Причина

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

Решение

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

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

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

Примечание

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