[previous] 0543 [next] [U] 'void' expressions have no value and may not be used in expressions.
Explicitly undefined REFERENCE - ISO:C90-6.2.2.2 void

An attempt has been made to used the value of an expression which is of type void. This is meaningless and the result will be undefined.

In practice, any attempt to use the value of a void expression is likely to result in other messages. For example, in the code below, message 0481 (a constraint error) is also generated.


/*PRQA S 2017,3199,3203,3408,3447 ++*/

extern void func(void);


extern void foo(void)
{
    int r;

    r = (int)func();                    /* Message 0543 - and also 0481 */
}


MISRA C:2012 Rules applicable to message 0543:

Rule-1.3  (Required) There shall be no occurrence of undefined or critical unspecified behaviour


See also:

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