Auto merge of #83839 - ldm0:deref, r=petrochenkov
Remove unneeded type resolving small optimization.
This commit is contained in:
commit
b1ea2618d3
@ -104,8 +104,8 @@ pub(super) fn to_option(self, fcx: &FnCtxt<'a, 'tcx>) -> Option<Ty<'tcx>> {
|
||||
/// for the program to type-check). `only_has_type` will return
|
||||
/// such a constraint, if it exists.
|
||||
pub(super) fn only_has_type(self, fcx: &FnCtxt<'a, 'tcx>) -> Option<Ty<'tcx>> {
|
||||
match self.resolve(fcx) {
|
||||
ExpectHasType(ty) => Some(ty),
|
||||
match self {
|
||||
ExpectHasType(ty) => Some(fcx.resolve_vars_if_possible(ty)),
|
||||
NoExpectation | ExpectCastableToType(_) | ExpectRvalueLikeUnsized(_) | IsLast(_) => {
|
||||
None
|
||||
}
|
||||
|
@ -161,7 +161,7 @@ pub(super) fn check_expr_with_expectation(
|
||||
expr: &'tcx hir::Expr<'tcx>,
|
||||
expected: Expectation<'tcx>,
|
||||
) -> Ty<'tcx> {
|
||||
debug!(">> type-checking: expr={:?} expected={:?}", expr, expected);
|
||||
debug!(">> type-checking: expected={:?}, expr={:?} ", expected, expr);
|
||||
|
||||
// True if `expr` is a `Try::from_ok(())` that is a result of desugaring a try block
|
||||
// without the final expr (e.g. `try { return; }`). We don't want to generate an
|
||||
@ -224,7 +224,7 @@ fn check_expr_kind(
|
||||
expr: &'tcx hir::Expr<'tcx>,
|
||||
expected: Expectation<'tcx>,
|
||||
) -> Ty<'tcx> {
|
||||
debug!("check_expr_kind(expr={:?}, expected={:?})", expr, expected);
|
||||
debug!("check_expr_kind(expected={:?}, expr={:?})", expected, expr);
|
||||
|
||||
let tcx = self.tcx;
|
||||
match expr.kind {
|
||||
|
Loading…
Reference in New Issue
Block a user