msg_206.c revision 1.5
11.5Srillig/*	$NetBSD: msg_206.c,v 1.5 2022/05/22 13:53:39 rillig Exp $	*/
21.1Srillig# 3 "msg_206.c"
31.1Srillig
41.1Srillig// Test for message: enumeration value(s) not handled in switch [206]
51.1Srillig
61.3Srillig/* lint1-extra-flags: -eh */
71.3Srillig
81.3Srilligenum number {
91.3Srillig	ONE, TWO, THREE
101.3Srillig};
111.3Srillig
121.3Srilligvoid
131.3Srilligtest(enum number num)
141.3Srillig{
151.3Srillig	switch (num) {
161.3Srillig	case ONE:
171.3Srillig	case TWO:
181.3Srillig		break;
191.3Srillig	}
201.3Srillig	/* expect-1: warning: enumeration value(s) not handled in switch [206] */
211.3Srillig
221.3Srillig	switch (num) {
231.3Srillig	case ONE:
241.3Srillig	case TWO:
251.3Srillig	case THREE:
261.3Srillig		break;
271.3Srillig	}
281.3Srillig}
291.5Srillig
301.5Srilligint
311.5Srilligtoo_many(enum number num)
321.5Srillig{
331.5Srillig	switch (num) {
341.5Srillig	case ONE:
351.5Srillig		return 1;
361.5Srillig	case TWO:
371.5Srillig		return 2;
381.5Srillig	case THREE:
391.5Srillig		return 3;
401.5Srillig	case 3:
411.5Srillig		return -1;
421.5Srillig	}
431.5Srillig	/* FIXME: There are _too many_ branches, not _too few_. */
441.5Srillig	/* expect-2: warning: enumeration value(s) not handled in switch [206] */
451.5Srillig	return 3;
461.5Srillig}
47