Skip to content

Commit e37fbc6

Browse files
committed
---
yaml --- r: 1338 b: refs/heads/master c: 302cafa h: refs/heads/master v: v3
1 parent 2b8eb5a commit e37fbc6

File tree

2 files changed

+12
-10
lines changed

2 files changed

+12
-10
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
---
2-
refs/heads/master: be97a77be81d286b1ae90c1050da1c7c0477ea3f
2+
refs/heads/master: 302cafa81dcc868e840c78f2bfbf41929de8a487

trunk/src/comp/front/parser.rs

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1577,15 +1577,12 @@ impure fn parse_item_mod(parser p) -> @ast.item {
15771577
ret @spanned(lo, hi, item);
15781578
}
15791579

1580-
15811580
impure fn parse_item_native_type(parser p) -> @ast.native_item {
1582-
auto lo = p.get_span();
1583-
expect(p, token.TYPE);
1584-
auto id = parse_ident(p);
1581+
auto t = parse_type_decl(p);
15851582
auto hi = p.get_span();
15861583
expect(p, token.SEMI);
1587-
auto item = ast.native_item_ty(id, p.next_def_id());
1588-
ret @spanned(lo, hi, item);
1584+
auto item = ast.native_item_ty(t._1, p.next_def_id());
1585+
ret @spanned(t._0, hi, item);
15891586
}
15901587

15911588
impure fn parse_native_item(parser p) -> @ast.native_item {
@@ -1624,18 +1621,23 @@ impure fn parse_item_native_mod(parser p) -> @ast.item {
16241621
ret @spanned(lo, hi, item);
16251622
}
16261623

1627-
impure fn parse_item_type(parser p) -> @ast.item {
1624+
impure fn parse_type_decl(parser p) -> tup(span, ast.ident) {
16281625
auto lo = p.get_span();
16291626
expect(p, token.TYPE);
16301627
auto id = parse_ident(p);
1628+
ret tup(lo, id);
1629+
}
1630+
1631+
impure fn parse_item_type(parser p) -> @ast.item {
1632+
auto t = parse_type_decl(p);
16311633
auto tps = parse_ty_params(p);
16321634

16331635
expect(p, token.EQ);
16341636
auto ty = parse_ty(p);
16351637
auto hi = p.get_span();
16361638
expect(p, token.SEMI);
1637-
auto item = ast.item_ty(id, ty, tps, p.next_def_id(), ast.ann_none);
1638-
ret @spanned(lo, hi, item);
1639+
auto item = ast.item_ty(t._1, ty, tps, p.next_def_id(), ast.ann_none);
1640+
ret @spanned(t._0, hi, item);
16391641
}
16401642

16411643
impure fn parse_item_tag(parser p) -> @ast.item {

0 commit comments

Comments
 (0)