1 1.3 rillig /* $NetBSD: msg_139.c,v 1.3 2021/03/16 23:18:49 rillig Exp $ */ 2 1.1 rillig # 3 "msg_139.c" 3 1.1 rillig 4 1.1 rillig // Test for message: division by 0 [139] 5 1.1 rillig 6 1.3 rillig void sink_int(int); 7 1.3 rillig void sink_double(double); 8 1.3 rillig 9 1.3 rillig void 10 1.3 rillig example(int i) 11 1.3 rillig { 12 1.3 rillig enum { 13 1.3 rillig zero = 0 14 1.3 rillig }; 15 1.3 rillig 16 1.3 rillig sink_int(i / 0); /* only triggers in constant expressions */ 17 1.3 rillig sink_int(i / zero); /* only triggers in constant expressions */ 18 1.3 rillig sink_double(i / 0.0); 19 1.3 rillig 20 1.3 rillig sink_int(13 / 0); /* expect: 139 */ 21 1.3 rillig sink_int(13 / zero); /* expect: 139 */ 22 1.3 rillig sink_double(13 / 0.0); /* expect: 139 *//* XXX: Clang doesn't warn */ 23 1.3 rillig sink_double(13 / -0.0); /* expect: 139 *//* XXX: Clang doesn't warn */ 24 1.3 rillig } 25