Remove some truly wrong logic in parse_constrs
This commit is contained in:
@@ -336,19 +336,14 @@ fn parse_constrs(parser p) -> common.spanned[vec[@ast.constr]] {
|
|||||||
let vec[@ast.constr] constrs = vec();
|
let vec[@ast.constr] constrs = vec();
|
||||||
if (p.peek() == token.COLON) {
|
if (p.peek() == token.COLON) {
|
||||||
p.bump();
|
p.bump();
|
||||||
let bool more = true;
|
while (true) {
|
||||||
while (more) {
|
auto constr = parse_ty_constr(p);
|
||||||
alt (p.peek()) {
|
hi = constr.span.hi;
|
||||||
case (token.IDENT(_)) {
|
Vec.push[@ast.constr](constrs, constr);
|
||||||
auto constr = parse_ty_constr(p);
|
if (p.peek() == token.COMMA) {
|
||||||
hi = constr.span.hi;
|
p.bump();
|
||||||
Vec.push[@ast.constr](constrs, constr);
|
} else {
|
||||||
if (p.peek() == token.COMMA) {
|
break;
|
||||||
p.bump();
|
|
||||||
more = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
case (_) { more = false; }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user