[previous] 1028 [next] [E] Use of the sizeof operator in a preprocessing directive is a language extension.
Language extensions REFERENCE - ISO:C90-6.8.1 Conditional Inclusion - Semantics, ISO:C90-6.1.1 Keywords

Keywords (such as sizeof) are not recognised in preprocessing directives such as #if and #elif. However some compilers do permit this form as a language extension. QA·C allows it but will issue message 1028.

For example:


/*PRQA S 553,2017,3205 ++*/

#if (sizeof(int) < 4)        /* Message 1028 */

typedef long XTYPE;

#else

typedef int XTYPE;

#endif

QA·C Source Code Analyser 8.1.2
© 2013 Programming Research.
www.programmingresearch.com
Personality Groups | Glossary | Message Index Contents