[previous] 0850 [next] [C99] Macro argument is empty.
ISO C99 Language features REFERENCE - ISO:C90-6.8.3 Macro Replacement - Semantics; ISO:C99 6.10.3

The argument supplied in this macro invocation is empty, i.e. it consists of no tokens. This is permitted in the ISO:C99 standard but is undefined in the ISO:C90 standard.

For example:


/*PRQA S 2017,3122,3205,3408,3429,3602,3625 ++*/

#define STR(text) #text

extern void func(void)
{

    const char * msg = STR();           /* Message 0850 - the macro expands to "" in C99 */

}


MISRA C:2012 Rules applicable to message 0850:

Dir-1.1  (Required) Any implementation-defined behaviour on which the output of the program depends shall be documented and understood


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