// expect: neg/chr/sum/enum/ // spec 4.7.1 and 3.14: labels are constant expressions (no precedence: 1 + 1 * 3 is 6) include rt; void pn(int x) { rt.put_n(x); rt.put_c(10); } enum color { RED, GREEN }; void t(int k) { switch (k) { case -1: rt.put_s("neg"); case 'a': rt.put_s("chr"); case 1 + 1 * 3: rt.put_s("sum"); case color.GREEN: rt.put_s("enum"); } rt.put_c(10); } fn main() { t(-1); t('a'); t(6); t(1); return 0; } // zc0: skip