1 1.5 rillig /* $NetBSD: msg_306.c,v 1.5 2023/07/07 19:45:22 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.5 rillig /* lint1-extra-flags: -X 351 */ 7 1.5 rillig 8 1.3 rillig unsigned char 9 1.3 rillig to_u8(void) 10 1.3 rillig { 11 1.3 rillig /* expect+1: warning: conversion of 'int' to 'unsigned char' is out of range [119] */ 12 1.3 rillig return 12345; 13 1.3 rillig } 14 1.3 rillig 15 1.3 rillig unsigned char 16 1.3 rillig and_u8(unsigned char a) 17 1.3 rillig { 18 1.3 rillig /* XXX: unused bits in constant */ 19 1.3 rillig return a & 0x1234; 20 1.3 rillig } 21 1.3 rillig 22 1.3 rillig unsigned char 23 1.3 rillig or_u8(unsigned char a) 24 1.3 rillig { 25 1.4 rillig /* expect+1: warning: constant truncated by conversion, op '|=' [306] */ 26 1.3 rillig a |= 0x1234; 27 1.3 rillig 28 1.3 rillig /* XXX: Lint doesn't care about the expanded form of the same code. */ 29 1.3 rillig a = a | 0x1234; 30 1.3 rillig 31 1.3 rillig return a; 32 1.3 rillig } 33