aboutsummaryrefslogtreecommitdiff
path: root/src/comp
diff options
context:
space:
mode:
authorPatrick Walton <[email protected]>2011-03-08 17:34:15 -0800
committerPatrick Walton <[email protected]>2011-03-08 17:34:41 -0800
commit5b7c3b8b5df8292e27943908fd4c16323c7833a8 (patch)
treec7ffdb44d0c074b9916fcecf0a2986a7f8c858f6 /src/comp
parentUn-XFAIL obj-return-polytypes.rs (diff)
downloadrust-5b7c3b8b5df8292e27943908fd4c16323c7833a8.tar.xz
rust-5b7c3b8b5df8292e27943908fd4c16323c7833a8.zip
rustc: Typecheck the base part of record extension expressions. Un-XFAIL rec-extend.rs.
Diffstat (limited to 'src/comp')
-rw-r--r--src/comp/middle/typeck.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/comp/middle/typeck.rs b/src/comp/middle/typeck.rs
index 81458d2d..cbb6e4ac 100644
--- a/src/comp/middle/typeck.rs
+++ b/src/comp/middle/typeck.rs
@@ -2064,7 +2064,13 @@ fn check_expr(&@fn_ctxt fcx, @ast.expr expr) -> @ast.expr {
case (ast.expr_rec(?fields, ?base, _)) {
- auto base_1 = base;
+ auto base_1;
+ alt (base) {
+ case (none[@ast.expr]) { base_1 = none[@ast.expr]; }
+ case (some[@ast.expr](?b_0)) {
+ base_1 = some[@ast.expr](check_expr(fcx, b_0));
+ }
+ }
let vec[ast.field] fields_1 = vec();
let vec[field] fields_t = vec();