1 1.5 rillig /* $NetBSD: msg_330.c,v 1.5 2022/06/17 06:59:16 rillig Exp $ */ 2 1.1 rillig # 3 "msg_330.c" 3 1.1 rillig 4 1.1 rillig // Test for message: operand of '%s' must be bool, not '%s' [330] 5 1.1 rillig // 6 1.1 rillig // See d_c99_bool_strict.c for many more examples. 7 1.1 rillig 8 1.1 rillig /* lint1-extra-flags: -T */ 9 1.1 rillig 10 1.1 rillig typedef _Bool bool; 11 1.1 rillig 12 1.1 rillig void 13 1.1 rillig called(bool); 14 1.1 rillig 15 1.1 rillig /*ARGSUSED*/ 16 1.1 rillig void 17 1.1 rillig example(bool b, char c, int i) 18 1.1 rillig { 19 1.1 rillig called(!b); 20 1.5 rillig 21 1.5 rillig /* expect+2: error: operand of '!' must be bool, not 'char' [330] */ 22 1.5 rillig /* expect+1: error: argument #1 expects '_Bool', gets passed 'int' [334] */ 23 1.5 rillig called(!c); 24 1.5 rillig 25 1.5 rillig /* expect+2: error: operand of '!' must be bool, not 'int' [330] */ 26 1.5 rillig /* expect+1: error: argument #1 expects '_Bool', gets passed 'int' [334] */ 27 1.5 rillig called(!i); 28 1.1 rillig } 29