aboutsummaryrefslogtreecommitdiff
path: root/src/comp/middle/trans.rs
diff options
context:
space:
mode:
authorPatrick Walton <[email protected]>2011-02-17 16:23:31 -0800
committerPatrick Walton <[email protected]>2011-02-17 16:23:31 -0800
commit10befcd9a4d9f68e2dbec84c4a86450a021143fb (patch)
tree7485ae8b66f3349e3987b480d4be44b34e01af5b /src/comp/middle/trans.rs
parentSteps toward implementing iterators. (diff)
downloadrust-10befcd9a4d9f68e2dbec84c4a86450a021143fb.tar.xz
rust-10befcd9a4d9f68e2dbec84c4a86450a021143fb.zip
Add type parameters to tag types
Diffstat (limited to 'src/comp/middle/trans.rs')
-rw-r--r--src/comp/middle/trans.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs
index 62b5a415..9d336f22 100644
--- a/src/comp/middle/trans.rs
+++ b/src/comp/middle/trans.rs
@@ -490,7 +490,7 @@ fn type_of_inner(@crate_ctxt cx, @ty.t t) -> TypeRef {
}
case (ty.ty_char) { ret T_char(); }
case (ty.ty_str) { ret T_ptr(T_str()); }
- case (ty.ty_tag(?tag_id)) {
+ case (ty.ty_tag(?tag_id, _)) {
ret llvm.LLVMResolveTypeHandle(cx.tags.get(tag_id).th.llth);
}
case (ty.ty_box(?t)) {
@@ -1445,7 +1445,9 @@ fn iter_structural_ty(@block_ctxt cx,
i += 1;
}
}
- case (ty.ty_tag(?tid)) {
+ case (ty.ty_tag(?tid, _)) {
+ // TODO: type params!
+
check (cx.fcx.ccx.tags.contains_key(tid));
auto info = cx.fcx.ccx.tags.get(tid);
auto n_variants = _vec.len[tup(ast.def_id,arity)](info.variants);