use super::{check_fn, Expectation, FnCtxt};
use astconv;
-use middle::infer;
use middle::region::CodeExtent;
use middle::subst;
use middle::ty::{self, ToPolyTraitRef, Ty};
use rscope::RegionScope;
use syntax::abi;
use syntax::ast;
-use syntax::ast::CaptureClause::*;
use syntax::ast_util;
use util::ppaux::Repr;
pub fn check_expr_closure<'a,'tcx>(fcx: &FnCtxt<'a,'tcx>,
expr: &ast::Expr,
- capture: ast::CaptureClause,
+ _capture: ast::CaptureClause,
opt_kind: Option<ast::UnboxedClosureKind>,
decl: &ast::FnDecl,
body: &ast::Block,
fn constrain_callee(rcx: &mut Rcx,
callee_id: ast::NodeId,
- call_expr: &ast::Expr,
- callee_expr: &ast::Expr) {
- let call_region = ty::ReScope(CodeExtent::from_node_id(call_expr.id));
-
+ _call_expr: &ast::Expr,
+ _callee_expr: &ast::Expr) {
let callee_ty = rcx.resolve_node_type(callee_id);
match callee_ty.sty {
ty::ty_bare_fn(..) => { }
}
}
- fn accumulate_from_closure_ty(&mut self,
- ty: Ty<'tcx>,
- c: &ty::ClosureTy<'tcx>)
- {
- match c.store {
- ty::RegionTraitStore(r_b, _) => {
- self.push_region_constraint_from_top(r_b);
- }
- ty::UniqTraitStore => { }
- }
-
- let required_region_bounds =
- ty::object_region_bounds(self.tcx, None, c.bounds.builtin_bounds);
- self.accumulate_from_object_ty(ty, c.bounds.region_bound, required_region_bounds);
- }
-
fn accumulate_from_object_ty(&mut self,
ty: Ty<'tcx>,
region_bound: ty::Region,