1 1.6 rillig /* $NetBSD: msg_306.c,v 1.6 2025/02/20 21:53:28 rillig Exp $ */ 2 1.1 rillig # 3 "msg_306.c" 3 1.1 rillig 4 1.6 rillig // Test for message: constant %s 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.6 rillig signed char s8; 9 1.6 rillig unsigned char u8; 10 1.3 rillig 11 1.6 rillig void 12 1.6 rillig msg_306(void) 13 1.3 rillig { 14 1.6 rillig u8 = 0xff; 15 1.6 rillig /* expect+1: warning: constant truncated by assignment [165] */ 16 1.6 rillig u8 = 0x100; 17 1.6 rillig 18 1.6 rillig u8 &= 0xff; 19 1.6 rillig /* expect+1: warning: constant 0x100 truncated by conversion, op '&=' [306] */ 20 1.6 rillig u8 &= 0x100; 21 1.6 rillig /* XXX: Lint doesn't care about the expanded form of the same code. */ 22 1.6 rillig u8 = u8 & 0x100; 23 1.3 rillig 24 1.6 rillig u8 |= 0xff; 25 1.6 rillig /* expect+1: warning: constant 0x100 truncated by conversion, op '|=' [306] */ 26 1.6 rillig u8 |= 0x100; 27 1.6 rillig /* XXX: Lint doesn't care about the expanded form of the same code. */ 28 1.6 rillig u8 = u8 | 0x100; 29 1.3 rillig 30 1.6 rillig s8 &= 0xff; 31 1.6 rillig /* expect+1: warning: constant 0x100 truncated by conversion, op '&=' [306] */ 32 1.6 rillig s8 &= 0x100; 33 1.3 rillig /* XXX: Lint doesn't care about the expanded form of the same code. */ 34 1.6 rillig s8 = s8 & 0x100; 35 1.6 rillig s8 |= 0xff; 36 1.6 rillig /* expect+1: warning: constant 0x100 truncated by conversion, op '|=' [306] */ 37 1.6 rillig s8 |= 0x100; 38 1.6 rillig /* XXX: Lint doesn't care about the expanded form of the same code. */ 39 1.6 rillig s8 = s8 | 0x100; 40 1.3 rillig } 41