[previous] 0513 [next] [C] Relational operator used to compare pointers to incompatible types.
Constraint violations REFERENCE - ISO:C90-6.3.8 Relational Operators - Constraints

This is a constraint error

A relational operator is being used to compare operands which have incompatible pointer types. A relational operator can only be used when:

For example:


/*PRQA S 490,3408,3447,3602,3625,3684 ++*/

extern int        *pi;
extern char       *pc1;
extern const char *pc2;
extern int         buf1[];
extern float       buf2[];

void foo(void)
{
    if (pi < pc1)            /* Message 0513 */
    {
    }

    if (buf1 > buf2)         /* Message 0513 */
    {
    }

    if (pc1 < pc2)           /* OK           */
    {
    }
}

See also:

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