Skip to content

Commit d7fdbea

Browse files
committed
---
yaml --- r: 3498 b: refs/heads/master c: b841152 h: refs/heads/master v: v3
1 parent ffcf18d commit d7fdbea

File tree

6 files changed

+28
-24
lines changed

6 files changed

+28
-24
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: be50cdd24ad3a47413d8cacfcdcdb5b293201490
2+
refs/heads/master: b841152a4007d9251803bbbb7e4f9d7633f3c51d

trunk/src/comp/metadata/tydecode.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -191,8 +191,8 @@ fn parse_ty(@pstate st, str_def sd) -> ty::t {
191191
case ('C') { ret ty::mk_chan(st.tcx, parse_ty(st, sd)); }
192192
case ('T') {
193193
assert (next(st) as char == '[');
194-
let vec[ty::mt] params = [];
195-
while (peek(st) as char != ']') { params += [parse_mt(st, sd)]; }
194+
let ty::mt[] params = ~[];
195+
while (peek(st) as char != ']') { params += ~[parse_mt(st, sd)]; }
196196
st.pos = st.pos + 1u;
197197
ret ty::mk_tup(st.tcx, params);
198198
}

trunk/src/comp/middle/ty.rs

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11

22
import std::int;
3+
import std::ivec;
34
import std::str;
45
import std::uint;
56
import std::vec;
@@ -263,7 +264,7 @@ tag sty {
263264
ty_port(t);
264265
ty_chan(t);
265266
ty_task;
266-
ty_tup(vec[mt]);
267+
ty_tup(mt[]);
267268
ty_rec(vec[field]);
268269
ty_fn(ast::proto, vec[arg], t, controlflow, vec[@constr_def]);
269270
ty_native_fn(ast::native_abi, vec[arg], t);
@@ -584,13 +585,13 @@ fn mk_chan(&ctxt cx, &t ty) -> t { ret gen_ty(cx, ty_chan(ty)); }
584585

585586
fn mk_task(&ctxt cx) -> t { ret gen_ty(cx, ty_task); }
586587

587-
fn mk_tup(&ctxt cx, &vec[mt] tms) -> t { ret gen_ty(cx, ty_tup(tms)); }
588+
fn mk_tup(&ctxt cx, &mt[] tms) -> t { ret gen_ty(cx, ty_tup(tms)); }
588589

589590
fn mk_imm_tup(&ctxt cx, &vec[t] tys) -> t {
590591
// TODO: map
591592

592-
let vec[ty::mt] mts = [];
593-
for (t typ in tys) { mts += [rec(ty=typ, mut=ast::imm)]; }
593+
let ty::mt[] mts = ~[];
594+
for (t typ in tys) { mts += ~[rec(ty=typ, mut=ast::imm)]; }
594595
ret mk_tup(cx, mts);
595596
}
596597

@@ -775,10 +776,10 @@ fn fold_ty(&ctxt cx, fold_mode fld, t ty_0) -> t {
775776
ty = copy_cname(cx, mk_tag(cx, tid, new_subtys), ty);
776777
}
777778
case (ty_tup(?mts)) {
778-
let vec[mt] new_mts = [];
779+
let mt[] new_mts = ~[];
779780
for (mt tm in mts) {
780781
auto new_subty = fold_ty(cx, fld, tm.ty);
781-
new_mts += [rec(ty=new_subty, mut=tm.mut)];
782+
new_mts += ~[rec(ty=new_subty, mut=tm.mut)];
782783
}
783784
ty = copy_cname(cx, mk_tup(cx, new_mts), ty);
784785
}
@@ -1111,7 +1112,7 @@ fn type_has_dynamic_size(&ctxt cx, &t ty) -> bool {
11111112
case (ty_task) { ret false; }
11121113
case (ty_tup(?mts)) {
11131114
auto i = 0u;
1114-
while (i < vec::len[mt](mts)) {
1115+
while (i < ivec::len[mt](mts)) {
11151116
if (type_has_dynamic_size(cx, mts.(i).ty)) { ret true; }
11161117
i += 1u;
11171118
}
@@ -1551,8 +1552,8 @@ fn equal_type_structures(&sty a, &sty b) -> bool {
15511552
case (ty_tup(?mts_a)) {
15521553
alt (b) {
15531554
case (ty_tup(?mts_b)) {
1554-
auto len = vec::len[mt](mts_a);
1555-
if (len != vec::len[mt](mts_b)) { ret false; }
1555+
auto len = ivec::len[mt](mts_a);
1556+
if (len != ivec::len[mt](mts_b)) { ret false; }
15561557
auto i = 0u;
15571558
while (i < len) {
15581559
if (!equal_mt(mts_a.(i), mts_b.(i))) { ret false; }
@@ -2477,8 +2478,8 @@ mod unify {
24772478
case (ty::ty_tup(?expected_elems)) {
24782479
alt (struct(cx.tcx, actual)) {
24792480
case (ty::ty_tup(?actual_elems)) {
2480-
auto expected_len = vec::len[ty::mt](expected_elems);
2481-
auto actual_len = vec::len[ty::mt](actual_elems);
2481+
auto expected_len = ivec::len[ty::mt](expected_elems);
2482+
auto actual_len = ivec::len[ty::mt](actual_elems);
24822483
if (expected_len != actual_len) {
24832484
auto err =
24842485
terr_tuple_size(expected_len, actual_len);
@@ -2487,7 +2488,7 @@ mod unify {
24872488
// TODO: implement an iterator that can iterate over
24882489
// two arrays simultaneously.
24892490

2490-
let vec[ty::mt] result_elems = [];
2491+
let ty::mt[] result_elems = ~[];
24912492
auto i = 0u;
24922493
while (i < expected_len) {
24932494
auto expected_elem = expected_elems.(i);
@@ -2507,7 +2508,7 @@ mod unify {
25072508
alt (result) {
25082509
case (ures_ok(?rty)) {
25092510
auto mt = rec(ty=rty, mut=mut);
2510-
result_elems += [mt];
2511+
result_elems += ~[mt];
25112512
}
25122513
case (_) { ret result; }
25132514
}

trunk/src/comp/middle/typeck.rs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import middle::ty::unify::fixup_result;
3333
import middle::ty::unify::fix_ok;
3434
import middle::ty::unify::fix_err;
3535
import std::int;
36+
import std::ivec;
3637
import std::str;
3738
import std::ufind;
3839
import std::uint;
@@ -293,9 +294,10 @@ fn ast_ty_to_ty(&ty::ctxt tcx, &ty_getter getter, &@ast::ty ast_ty) -> ty::t {
293294
typ = ty::mk_chan(tcx, ast_ty_to_ty(tcx, getter, t));
294295
}
295296
case (ast::ty_tup(?fields)) {
296-
let vec[ty::mt] flds = [];
297+
let ty::mt[] flds = ~[];
298+
ivec::reserve(flds, vec::len(fields));
297299
for (ast::mt field in fields) {
298-
vec::push[ty::mt](flds, ast_mt_to_mt(tcx, getter, field));
300+
flds += ~[ast_mt_to_mt(tcx, getter, field)];
299301
}
300302
typ = ty::mk_tup(tcx, flds);
301303
}
@@ -1937,11 +1939,12 @@ fn check_expr(&@fn_ctxt fcx, &@ast::expr expr) {
19371939
write::ty_only_fixup(fcx, id, typ);
19381940
}
19391941
case (ast::expr_tup(?elts)) {
1940-
let vec[ty::mt] elts_mt = [];
1942+
let ty::mt[] elts_mt = ~[];
1943+
ivec::reserve(elts_mt, vec::len(elts));
19411944
for (ast::elt e in elts) {
19421945
check_expr(fcx, e.expr);
19431946
auto ety = expr_ty(fcx.ccx.tcx, e.expr);
1944-
elts_mt += [rec(ty=ety, mut=e.mut)];
1947+
elts_mt += ~[rec(ty=ety, mut=e.mut)];
19451948
}
19461949
auto typ = ty::mk_tup(fcx.ccx.tcx, elts_mt);
19471950
write::ty_only_fixup(fcx, id, typ);
@@ -2004,7 +2007,7 @@ fn check_expr(&@fn_ctxt fcx, &@ast::expr expr) {
20042007
case (ty::ty_tup(?args)) {
20052008
let uint ix =
20062009
ty::field_num(fcx.ccx.tcx.sess, expr.span, field);
2007-
if (ix >= vec::len[ty::mt](args)) {
2010+
if (ix >= ivec::len[ty::mt](args)) {
20082011
fcx.ccx.tcx.sess.span_fatal(expr.span,
20092012
"bad index on tuple");
20102013
}

trunk/src/comp/pretty/ppaux.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,8 +107,8 @@ fn ty_to_str(&ctxt cx, &t typ) -> str {
107107
case (ty_type) { s += "type"; }
108108
case (ty_task) { s += "task"; }
109109
case (ty_tup(?elems)) {
110-
auto f = bind mt_to_str(cx, _);
111-
auto strs = vec::map[mt, str](f, elems);
110+
let vec[str] strs = [];
111+
for (mt tm in elems) { strs += [mt_to_str(cx, tm)]; }
112112
s += "tup(" + str::connect(strs, ",") + ")";
113113
}
114114
case (ty_rec(?elems)) {

trunk/src/comp/util/data.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,4 @@ mod interner {
3636
}
3737
}
3838
fn get[T](&interner[T] itr, uint idx) -> T { ret itr.vect.(idx); }
39-
}
39+
}

0 commit comments

Comments
 (0)