[previous] 3783 [next] Implicit conversion: long to unsigned int.
Arithmetic type - Implicit conversions

An expression of type signed long is being implicitly converted to type unsigned int. A conversion of this type is dangerous; the result of converting any negative value will probably be meaningless.

Implicit type conversions of this nature can occur in the context of:


/*PRQA S 2017,3197,3199,3203,3227,3408,3447,3602,3625 ++*/

extern void ef(unsigned int up);

extern unsigned int foo(signed long s)
{
    unsigned int u = s;         /* Message 3783 - Initialization */

    u = s;                      /* Message 3783 - Assignment */

    ef(s);                      /* Message 3783 - Function argument */

    return s;                   /* Message 3983 - Function return */
}


No MISRA C:2012 Rules applicable to message 3783


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