xref: /netbsd-src/tests/usr.bin/xlint/lint1/msg_139.c (revision 7d62b00eb9ad855ffcd7da46b41e23feb5476fac)
1 /*	$NetBSD: msg_139.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
2 # 3 "msg_139.c"
3 
4 // Test for message: division by 0 [139]
5 
6 void sink_int(int);
7 void sink_double(double);
8 
9 void
10 example(int i)
11 {
12 	enum {
13 		zero = 0
14 	};
15 
16 	sink_int(i / 0);	/* only triggers in constant expressions */
17 	sink_int(i / zero);	/* only triggers in constant expressions */
18 	sink_double(i / 0.0);
19 
20 	/* expect+1: error: division by 0 [139] */
21 	sink_int(13 / 0);
22 	/* expect+1: error: division by 0 [139] */
23 	sink_int(13 / zero);
24 	/* expect+1: error: division by 0 [139] */
25 	sink_double(13 / 0.0);	/* XXX: Clang doesn't warn */
26 	/* expect+1: error: division by 0 [139] */
27 	sink_double(13 / -0.0);	/* XXX: Clang doesn't warn */
28 }
29