Можно ли подавить обнаруженный Parasoft дефект с помощью директив в коде?

Я хотел бы знать, как устранить этот дефект, найденный Parasoft

BD-PB-CC:Condition "result != 0" always evaluates to false
/home/redbend/dev/vdm-10.2/sdk/source/engine/core/src/vdm_core_api.c:82

Проблема с этим кодом:

//Initialize MMI sub-component
result = VDM_MMI_init();
if (result != VDM_ERR_OK)
    goto err;

который вызывает эту функцию:

VDM_Error VDM_MMI_init(void)
{
    return VDM_ERR_OK;
}

Структура должна поддерживаться, так как VDM_MMI_init() может вернуть ошибку в будущем.

Я ищу любой вид макросов или комментарии могут быть встроены в код, который скажет тесту C++ игнорировать эту проблему

3 ответа

Оглядываясь вокруг, вы можете подавить это следующим:

#pragma parasoft suppress item BD-PB-CC

Тогда после предупреждения сайта:

#pragma parasoft unsuppress item BD-PB-CC

Источники: http://forums.parasoft.com/index.php?showtopic=1566 и http://www-afs.secure-endpoints.com/afs/usatlas.bnl.gov/sun4x_59/app/codewizard-4.3-WS6.0u1/manuals/howsupp_.htm

Я получил от поддержки parasoft следующую запись комментария

/* parasoft-suppress BD_PB_CC  "THIS IS SUPPRESSION COMMENT" */

Быть помещенным в конец нарушенной строки (с пробелом после конца вашего кода) Обратите внимание, что идентификатор правила должен соответствовать нарушенному правилу. То, что в кавычках, это ваш комментарий подавления.

Вы можете просто напечатать:

int a = 0; // parasoft-suppress RULE.ID

и нарушение будет подавлено

Другие вопросы по тегам