Home | History | Annotate | Line # | Download | only in lint1
      1 /*	$NetBSD: msg_298.c,v 1.8 2025/02/27 23:46:30 rillig Exp $	*/
      2 # 3 "msg_298.c"
      3 
      4 // Test for message: conversion from '%s' to '%s' may lose accuracy, arg #%d [298]
      5 
      6 /* lint1-extra-flags: -a -X 351 */
      7 
      8 void take_uchar(unsigned char);
      9 void take_schar(signed char);
     10 void take_uint(unsigned int);
     11 void take_int(int);
     12 
     13 void
     14 convert_bit_and(long l)
     15 {
     16 	/* expect+1: warning: conversion from 'long' to 'unsigned char' may lose accuracy, arg #1 [298] */
     17 	take_uchar(l);
     18 	take_uchar(l & 0xFF);
     19 	/* expect+1: warning: conversion from 'long' to 'unsigned char' may lose accuracy, arg #1 [298] */
     20 	take_uchar(l & 0x100);
     21 	/* expect+1: warning: conversion from 'long' to 'signed char' may lose accuracy, arg #1 [298] */
     22 	take_schar(l & 0xFF);
     23 	take_schar(l & 0x7F);
     24 }
     25 
     26 void
     27 convert_mult(long long ll)
     28 {
     29 	/* expect+1: warning: conversion from 'long long' to 'int' may lose accuracy, arg #1 [298] */
     30 	take_int(ll * 2);
     31 }
     32 
     33 // For lossy floating-to-integer conversions, see messages 380 and 381.
     34