Привет, это часть моего кода и я получаю предупреждение MISRA для этой логики
код:
#define NASSERT(x) std::_nassert(x)
void fun(
const uint8_t * restrict src ,
uint8_t * restrict dst
){
NASSERT(((int32_t) src % 8) == 0); //line 1
NASSERT(((int32_t) dst % 8) == 0); //line 2
}
Предупреждения: (как в строке 1, так и в строке 2)
Warning 522: Highest operation, a 'constant', lacks side-effects [MISRA 2004 Rule 14.2]
Error 40: Undeclared identifier 'std'
Можете ли вы помочь мне решить эту проблему …
Вы используете MISRA для проверки C, в то время как вы программируете на C ++.
MISRA C: 2004 для языка программирования C.
Вы должны использовать MISRA C ++: 2008.
Других решений пока нет …