[previous] 3828 [next] Implicit conversion: long double to long.
Arithmetic type - Implicit conversions

An expression of type long double is being implicitly converted to type signed long. A conversion of this kind may result in a loss of precision as the fractional element of the value is discarded. If the integral element of the value cannot be represented in type signed long, the result will be meaningless.

For example:


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

extern long double ldx;
extern void ef(signed long p);

extern void foo(void)
{
    signed long sla;

    sla = ldx;                  /* Message 3828 */

    ef(ldx);                    /* Message 3828 */
}

See also:

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