[previous] 0489 [next] The integer value 1 is being added or subtracted from a pointer.
Pointers REFERENCE - ISO:C90-6.3.6 Additive Operators - Constraints

An integer value of 1 is being added or subtracted from a pointer value.

For example:


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

extern int *px;
extern int *qx;

extern void foo(void)
{
    long s;

    px = px + 2;                /* Message 0488 */
    s = qx - px;                /* Message 0488 */

    px = px + 1;                /* Message 0489 */
    ++px;                       /* Message 0489 */
    qx--;                       /* Message 0489 */

}


MISRA-C:2004 Rules applicable to message 0489:

Rule  17.4  (Required) Array indexing shall be the only allowed form of pointer arithmetic.


See also:

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