Skip to content

Commit 829afde

Browse files
committed
---
yaml --- r: 4847 b: refs/heads/master c: 7053b60 h: refs/heads/master i: 4845: cbe349f 4843: 9a1bbeb 4839: 3b1a38a 4831: c6c9fe5 v: v3
1 parent 18cb067 commit 829afde

File tree

5 files changed

+27
-20
lines changed

5 files changed

+27
-20
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: 325ea41a1ef2b648cc032f4b0370f285d6d4821a
2+
refs/heads/master: 7053b6010aa35580c051b334920a4bba3ffbec1a

trunk/src/comp/syntax/parse/parser.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1109,6 +1109,13 @@ fn parse_dot_or_call_expr_with(p: &parser, e: @ast::expr) -> @ast::expr {
11091109
e = mk_expr(p, lo, hi, ast::expr_call(e, es.node));
11101110
}
11111111
}
1112+
token::LBRACKET. {
1113+
p.bump();
1114+
let ix = parse_expr(p);
1115+
hi = ix.span.hi;
1116+
expect(p, token::RBRACKET);
1117+
e = mk_expr(p, lo, hi, ast::expr_index(e, ix));
1118+
}
11121119
token::DOT. {
11131120
p.bump();
11141121
alt p.peek() {

trunk/src/test/run-pass/integral-indexing.rs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,16 @@
55
fn main() {
66
let v: [int] = ~[0, 1, 2, 3, 4, 5];
77
let s: str = "abcdef";
8-
assert (v.(3u) == 3);
9-
assert (v.(3u8) == 3);
10-
assert (v.(3i8) == 3);
11-
assert (v.(3u32) == 3);
12-
assert (v.(3i32) == 3);
13-
log v.(3u8);
14-
assert (s.(3u) == 'd' as u8);
15-
assert (s.(3u8) == 'd' as u8);
16-
assert (s.(3i8) == 'd' as u8);
17-
assert (s.(3u32) == 'd' as u8);
18-
assert (s.(3i32) == 'd' as u8);
19-
log s.(3u8);
8+
assert (v[3u] == 3);
9+
assert (v[3u8] == 3);
10+
assert (v[3i8] == 3);
11+
assert (v[3u32] == 3);
12+
assert (v[3i32] == 3);
13+
log v[3u8];
14+
assert (s[3u] == 'd' as u8);
15+
assert (s[3u8] == 'd' as u8);
16+
assert (s[3i8] == 'd' as u8);
17+
assert (s[3u32] == 'd' as u8);
18+
assert (s[3i32] == 'd' as u8);
19+
log s[3u8];
2020
}

trunk/src/test/run-pass/str-idx.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
fn main() {
44
let s = "hello";
5-
let c: u8 = s.(4);
5+
let c: u8 = s[4];
66
log c;
77
assert (c == 0x6f as u8);
88
}

trunk/src/test/run-pass/vec.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@
44
// -*- rust -*-
55
fn main() {
66
let v: [int] = ~[10, 20];
7-
assert (v.(0) == 10);
8-
assert (v.(1) == 20);
7+
assert (v[0]== 10);
8+
assert (v[1] == 20);
99
let x: int = 0;
10-
assert (v.(x) == 10);
11-
assert (v.(x + 1) == 20);
10+
assert (v[x] == 10);
11+
assert (v[x + 1] == 20);
1212
x = x + 1;
13-
assert (v.(x) == 20);
14-
assert (v.(x - 1) == 10);
13+
assert (v[x] == 20);
14+
assert (v[x - 1] == 10);
1515
}

0 commit comments

Comments
 (0)