Home | History | Annotate | Line # | Download | only in lint1
msg_306.c revision 1.4
      1  1.4  rillig /*	$NetBSD: msg_306.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
      2  1.1  rillig # 3 "msg_306.c"
      3  1.1  rillig 
      4  1.4  rillig // Test for message: constant truncated by conversion, op '%s' [306]
      5  1.1  rillig 
      6  1.3  rillig unsigned char
      7  1.3  rillig to_u8(void)
      8  1.3  rillig {
      9  1.3  rillig 	/* expect+1: warning: conversion of 'int' to 'unsigned char' is out of range [119] */
     10  1.3  rillig 	return 12345;
     11  1.3  rillig }
     12  1.3  rillig 
     13  1.3  rillig unsigned char
     14  1.3  rillig and_u8(unsigned char a)
     15  1.3  rillig {
     16  1.3  rillig 	/* XXX: unused bits in constant */
     17  1.3  rillig 	return a & 0x1234;
     18  1.3  rillig }
     19  1.3  rillig 
     20  1.3  rillig unsigned char
     21  1.3  rillig or_u8(unsigned char a)
     22  1.3  rillig {
     23  1.4  rillig 	/* expect+1: warning: constant truncated by conversion, op '|=' [306] */
     24  1.3  rillig 	a |= 0x1234;
     25  1.3  rillig 
     26  1.3  rillig 	/* XXX: Lint doesn't care about the expanded form of the same code. */
     27  1.3  rillig 	a = a | 0x1234;
     28  1.3  rillig 
     29  1.3  rillig 	return a;
     30  1.3  rillig }
     31