1 1.3 christos /* $NetBSD: msg_220.c,v 1.3 2021/04/12 15:54:55 christos Exp $ */ 2 1.1 rillig # 3 "msg_220.c" 3 1.1 rillig 4 1.1 rillig // Test for message: fallthrough on case statement [220] 5 1.1 rillig 6 1.2 rillig /* lint1-extra-flags: -h */ 7 1.2 rillig 8 1.2 rillig extern void 9 1.2 rillig println(const char *); 10 1.2 rillig 11 1.2 rillig void 12 1.2 rillig example(int n) 13 1.2 rillig { 14 1.2 rillig switch (n) { 15 1.2 rillig case 1: 16 1.2 rillig case 3: 17 1.2 rillig case 5: 18 1.2 rillig println("odd"); 19 1.2 rillig case 2: /* expect: 220 */ 20 1.2 rillig case 7: 21 1.2 rillig println("prime"); 22 1.2 rillig default: /* expect: 284 */ 23 1.2 rillig println("number"); 24 1.2 rillig } 25 1.2 rillig } 26 1.3 christos 27 1.3 christos void 28 1.3 christos example1(int n) 29 1.3 christos { 30 1.3 christos switch (n) { 31 1.3 christos case 1: 32 1.3 christos case 3: 33 1.3 christos case 5: 34 1.3 christos println("odd"); 35 1.3 christos __attribute__((__fallthrough__)); 36 1.3 christos case 2: 37 1.3 christos case 7: 38 1.3 christos println("prime"); 39 1.3 christos __attribute__((__fallthrough__)); 40 1.3 christos default: 41 1.3 christos println("number"); 42 1.3 christos } 43 1.3 christos } 44