![]() |
![]() |
1258 | ![]() |
||||
![]() | |||||||
| Arithmetic type - Casts | |||||||
An integer constant is being cast to a different integral type. Is this intended ? Perhaps the suffix is inappropriate ? Message 1258 is generated if the constant is suffixed. Message 1259 is generated if the constant is unsuffixed. Neither message is generated if the cast is to a type of lower rank than int. For example:
/*PRQA S 1278,2017,3120,3198,3408,3447 ++*/
/**********************************
* OPTIONS: -ex LONGLONG
*********************************/
extern int sia;
extern unsigned int uia;
extern long sla;
extern unsigned long ula;
extern void foo(void)
{
sia = (int)1234UL; /* Message 1258 */
sia = (int)1234U; /* Message 1258 */
uia = (unsigned int)1234UL; /* Message 1258 */
uia = (unsigned int)1234L; /* Message 1258 */
ula = (unsigned long)1234U; /* Message 1258 */
ula = (unsigned long)1234L; /* Message 1258 */
sla = (long)1234UL; /* Message 1258 */
sla = (long)1234U; /* Message 1258 */
uia = (unsigned int)1234; /* Message 1259 */
sla = (long)1234; /* Message 1259 */
ula = (unsigned long)1234; /* Message 1259 */
}
See also:
![]() | ||
| QA·C Source Code Analyser 8.1.2
© 2013 Programming Research. www.programmingresearch.com | Personality Groups | Glossary | Message Index | Contents |