about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/comp/middle/typeck.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/comp/middle/typeck.rs b/src/comp/middle/typeck.rs
index 5412f13135e..5b14eea4101 100644
--- a/src/comp/middle/typeck.rs
+++ b/src/comp/middle/typeck.rs
@@ -86,7 +86,11 @@ fn ast_ty_to_ty(ty_getter getter, &@ast.ty ast_ty) -> @ty.t {
             fn fold_simple_ty(@ty.t t) -> @ty.t {
                 alt (t.struct) {
                     case (ty.ty_param(?param_def)) {
-                        ret param_map.get(param_def);
+                        if (param_map.contains_key(param_def)) {
+                            ret param_map.get(param_def);
+                        } else {
+                            ret t;
+                        }
                     }
                     case (_) {
                         ret t;