aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/comp/middle/resolve.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/comp/middle/resolve.rs b/src/comp/middle/resolve.rs
index 7e02b3d3..2ee54804 100644
--- a/src/comp/middle/resolve.rs
+++ b/src/comp/middle/resolve.rs
@@ -115,6 +115,18 @@ fn lookup_name(&env e, ast.ident i) -> option.t[def] {
}
}
}
+ case (ast.item_obj(_, ?ob, ?ty_params, _, _)) {
+ for (ast.obj_field f in ob.fields) {
+ if (_str.eq(f.ident, i)) {
+ ret some[def](ast.def_obj_field(f.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);
}