aboutsummaryrefslogtreecommitdiff
path: root/src/comp
diff options
context:
space:
mode:
authorPatrick Walton <[email protected]>2010-12-15 13:12:39 -0800
committerPatrick Walton <[email protected]>2010-12-15 13:13:36 -0800
commitd1b236698386f4357f31068d624047c8b9037184 (patch)
tree93eeb73dfad0c3794a31371791cf19a7aff9a01d /src/comp
parentTeach typeck to stringify obj types. (diff)
downloadrust-d1b236698386f4357f31068d624047c8b9037184.tar.xz
rust-d1b236698386f4357f31068d624047c8b9037184.zip
rustc: Resolve type params
Diffstat (limited to 'src/comp')
-rw-r--r--src/comp/middle/resolve.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/comp/middle/resolve.rs b/src/comp/middle/resolve.rs
index 1165fbcc..7e02b3d3 100644
--- a/src/comp/middle/resolve.rs
+++ b/src/comp/middle/resolve.rs
@@ -103,12 +103,17 @@ fn lookup_name(&env e, ast.ident i) -> option.t[def] {
case (scope_item(?it)) {
alt (it.node) {
- case (ast.item_fn(_, ?f, _, _, _)) {
+ case (ast.item_fn(_, ?f, ?ty_params, _, _)) {
for (ast.arg a in f.inputs) {
if (_str.eq(a.ident, i)) {
ret some[def](ast.def_arg(a.id));
}
}
+ for (ast.ty_param tp in ty_params) {
+ if (_str.eq(tp.ident, i)) {
+ ret some[def](ast.def_ty_arg(tp.id));
+ }
+ }
}
case (ast.item_mod(_, ?m, _)) {
ret check_mod(i, m);