diff options
| author | Marijn Haverbeke <[email protected]> | 2011-05-12 15:52:12 +0200 |
|---|---|---|
| committer | Marijn Haverbeke <[email protected]> | 2011-05-12 15:52:12 +0200 |
| commit | dd9b6dccb4cd45c8cfab8caebd82817c106db7b8 (patch) | |
| tree | 70cd58c263140d085ad7c87726e1e63916149184 /src/comp/front/parser.rs | |
| parent | Keep resolve data in external hash table, rather than embedded defs (diff) | |
| download | rust-dd9b6dccb4cd45c8cfab8caebd82817c106db7b8.tar.xz rust-dd9b6dccb4cd45c8cfab8caebd82817c106db7b8.zip | |
Remove some truly wrong logic in parse_constrs
Diffstat (limited to 'src/comp/front/parser.rs')
| -rw-r--r-- | src/comp/front/parser.rs | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/src/comp/front/parser.rs b/src/comp/front/parser.rs index fb43188a..2295e478 100644 --- a/src/comp/front/parser.rs +++ b/src/comp/front/parser.rs @@ -336,19 +336,14 @@ fn parse_constrs(parser p) -> common.spanned[vec[@ast.constr]] { let vec[@ast.constr] constrs = vec(); if (p.peek() == token.COLON) { p.bump(); - let bool more = true; - while (more) { - alt (p.peek()) { - case (token.IDENT(_)) { - auto constr = parse_ty_constr(p); - hi = constr.span.hi; - Vec.push[@ast.constr](constrs, constr); - if (p.peek() == token.COMMA) { - p.bump(); - more = false; - } - } - case (_) { more = false; } + while (true) { + auto constr = parse_ty_constr(p); + hi = constr.span.hi; + Vec.push[@ast.constr](constrs, constr); + if (p.peek() == token.COMMA) { + p.bump(); + } else { + break; } } } |