1

こんにちは、これは私のコードの一部で、このロジック コードに対して 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'

これを解決するために私を案内してもらえますか...

4

1 に答える 1

3

C++ でプログラミングしているときに、C 用の MISRA チェッカーを使用しています。

MISRA C:2004 は C プログラミング言語用です。

MISRA C++:2008を使用する必要があります。

于 2014-02-03T10:50:01.983 に答える