[previous] 0446 [next] [C] Operand of ++/-- must have scalar (arithmetic or pointer) type.
Constraint violations REFERENCE - ISO:C90-6.3.2.4 (Postfix), ISO:C90-6.3.3.1 (Prefix) Increment and Decrement Operators

This is a constraint error

The operand of a ++ or -- operator (either prefix or postfix) must be of scalar type, i.e. an arithmetic type or a pointer type. For example:


/*PRQA S 750,759,2213,2216,3132,3408,3447,3625 ++*/

struct ST  {int a; int b;};
union  UN  {char c[4]; int x;};

extern struct ST st;
extern union  UN un;

void foo(void)
{
    st++;                       /* Message 0446 */
    un++;                       /* Message 0446 */
}

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