diff options
Diffstat (limited to 'src/comp/metadata/tydecode.rs')
| -rw-r--r-- | src/comp/metadata/tydecode.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/comp/metadata/tydecode.rs b/src/comp/metadata/tydecode.rs index 961d7f1f400..523aada6e62 100644 --- a/src/comp/metadata/tydecode.rs +++ b/src/comp/metadata/tydecode.rs @@ -236,6 +236,13 @@ fn parse_ty(st: @pstate, sd: str_def) -> ty::t { st.pos = st.pos + 1u; ret ty::mk_rec(st.tcx, fields); } + 'T' { + assert (next(st) as char == '['); + let params = ~[]; + while peek(st) as char != ']' { params += ~[parse_mt(st, sd)]; } + st.pos = st.pos + 1u; + ret ty::mk_tup(st.tcx, params); + } 'F' { let func = parse_ty_fn(st, sd); ret ty::mk_fn(st.tcx, ast::proto_fn, func.args, func.ty, func.cf, |
