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