[previous] 1042 [next] [E] Using I64 or UI64 as an integer constant suffix. This is a language extension.
Language extensions

I64 and UI64 are integer constant suffixes which are not known in the ISO:C Standard.

They are implicitly associated with 64 bit integer types but QAC simply treats them as equivalent to LL and ULL respectively, regardless of the implemented size of type long long.

For example:


/*PRQA S 1278,1305,2017,3211,3408,3602 ++*/
/********************************
 * OPTIONS: -ex LONGLONG
 *******************************/

const signed   long long sx = 100I64;           /* Message 1042 */
const unsigned long long ux = 200UI64;          /* Message 1042 */


MISRA-C:2004 Rules applicable to message 1042:

Rule  1.1  (Required) All code shall conform to ISO/IEC 9899:1990 C programming language, ISO 9899, amended and corrected by ISO/IEC 9899/COR1:1995, ISO/IEC 9899/AMD1:1995, and ISO/IEC 9899/COR2: 1996192


QA·C Source Code Analyser 8.1
MISRA-C:2004 Compliance Module 3.2
© 2012 Programming Research.
www.programmingresearch.com
Personality Groups | Glossary | Message Index | MISRA-C:2004 Rule Index Contents