xref: /netbsd-src/tests/usr.bin/xlint/lint1/msg_298.c (revision 0f4cfb3194727ca0b8e46faf51c9e2ed182e51ed)
1*0f4cfb31Srillig /*	$NetBSD: msg_298.c,v 1.7 2024/06/09 10:27:39 rillig Exp $	*/
2a0a15c14Srillig # 3 "msg_298.c"
3a0a15c14Srillig 
4a0a15c14Srillig // Test for message: conversion from '%s' to '%s' may lose accuracy, arg #%d [298]
5a0a15c14Srillig 
6b2baa501Srillig /* lint1-extra-flags: -a -X 351 */
7889169b5Srillig 
8889169b5Srillig void take_uchar(unsigned char);
9889169b5Srillig void take_schar(signed char);
10360641f9Srillig void take_uint(unsigned int);
11889169b5Srillig 
12889169b5Srillig void
convert_bit_and(long l)13889169b5Srillig convert_bit_and(long l)
14889169b5Srillig {
15889169b5Srillig 	/* expect+1: warning: conversion from 'long' to 'unsigned char' may lose accuracy, arg #1 [298] */
16889169b5Srillig 	take_uchar(l);
17889169b5Srillig 	take_uchar(l & 0xFF);
18889169b5Srillig 	/* expect+1: warning: conversion from 'long' to 'unsigned char' may lose accuracy, arg #1 [298] */
19889169b5Srillig 	take_uchar(l & 0x100);
20889169b5Srillig 	/* expect+1: warning: conversion from 'long' to 'signed char' may lose accuracy, arg #1 [298] */
21889169b5Srillig 	take_schar(l & 0xFF);
22889169b5Srillig 	take_schar(l & 0x7F);
23889169b5Srillig }
24360641f9Srillig 
25*0f4cfb31Srillig // For lossy floating-to-integer conversions, see messages 380 and 381.
26