Commit bbec03bb authored by Yukihiro Matsumoto's avatar Yukihiro Matsumoto

add missing (empty) default for swtch; close #364

parent 48c73ac6
...@@ -620,6 +620,9 @@ mrb_get_args(mrb_state *mrb, const char *format, ...) ...@@ -620,6 +620,9 @@ mrb_get_args(mrb_state *mrb, const char *format, ...)
} }
} }
break; break;
default:
mrb_raise(mrb, E_ARGUMENT_ERROR, "invalide argument specifier %c", c);
break;
} }
} }
if (!c && argc > i) { if (!c && argc > i) {
......
...@@ -207,6 +207,8 @@ genop_peep(codegen_scope *s, mrb_code i, int val) ...@@ -207,6 +207,8 @@ genop_peep(codegen_scope *s, mrb_code i, int val)
return; return;
} }
break; break;
default:
break;
} }
break; break;
case OP_SETIV: case OP_SETIV:
...@@ -240,6 +242,8 @@ genop_peep(codegen_scope *s, mrb_code i, int val) ...@@ -240,6 +242,8 @@ genop_peep(codegen_scope *s, mrb_code i, int val)
return; return;
} }
break; break;
default:
break;
} }
} }
genop(s, i); genop(s, i);
......
...@@ -3041,6 +3041,8 @@ backref_error(parser_state *p, node *n) ...@@ -3041,6 +3041,8 @@ backref_error(parser_state *p, node *n)
case NODE_BACK_REF: case NODE_BACK_REF:
yyerror_i(p, "can't set variable $%c", (int)(intptr_t)n->cdr); yyerror_i(p, "can't set variable $%c", (int)(intptr_t)n->cdr);
break; break;
default:
break;
} }
} }
...@@ -3722,7 +3724,7 @@ parser_yylex(parser_state *p) ...@@ -3722,7 +3724,7 @@ parser_yylex(parser_state *p)
} }
if (isspace(c)) { if (isspace(c)) {
if (!IS_ARG()) { if (!IS_ARG()) {
int c2 = 0; int c2;
switch (c) { switch (c) {
case ' ': case ' ':
c2 = 's'; c2 = 's';
...@@ -3742,6 +3744,9 @@ parser_yylex(parser_state *p) ...@@ -3742,6 +3744,9 @@ parser_yylex(parser_state *p)
case '\f': case '\f':
c2 = 'f'; c2 = 'f';
break; break;
default:
c2 = 0;
break;
} }
if (c2) { if (c2) {
char buf[256]; char buf[256];
......
...@@ -31,7 +31,11 @@ range_check(mrb_state *mrb, mrb_value a, mrb_value b) ...@@ -31,7 +31,11 @@ range_check(mrb_state *mrb, mrb_value a, mrb_value b)
case MRB_TT_FIXNUM: case MRB_TT_FIXNUM:
case MRB_TT_FLOAT: case MRB_TT_FLOAT:
return; return;
default:
break;
} }
default:
break;
} }
mrb_p(mrb, a); mrb_p(mrb, a);
......
...@@ -276,6 +276,7 @@ symname_p(const char *name) ...@@ -276,6 +276,7 @@ symname_p(const char *name)
case '>': case '>':
switch (*++m) { switch (*++m) {
case '>': case '=': ++m; break; case '>': case '=': ++m; break;
default: break;
} }
break; break;
...@@ -319,7 +320,8 @@ id: ...@@ -319,7 +320,8 @@ id:
while (is_identchar(*m)) m += 1; while (is_identchar(*m)) m += 1;
if (localid) { if (localid) {
switch (*m) { switch (*m) {
case '!': case '?': case '=': ++m; case '!': case '?': case '=': ++m;
default: break;
} }
} }
break; break;
......
...@@ -114,6 +114,8 @@ parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args) ...@@ -114,6 +114,8 @@ parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args)
} }
else return -3; else return -3;
return 0; return 0;
default:
break;
} }
} }
else if (args->rfp == NULL) { else if (args->rfp == NULL) {
......
...@@ -110,6 +110,8 @@ append_cmdline: ...@@ -110,6 +110,8 @@ append_cmdline:
} }
else return -3; else return -3;
return 0; return 0;
default:
break;
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment