Home | History | Annotate | Line # | Download | only in lint1
msg_220.c revision 1.3
      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