Skip to content
Permalink
Browse files

document `ret_coercion` and `ret_coercion_span`

  • Loading branch information...
nikomatsakis committed Oct 2, 2019
1 parent a999132 commit 5d64b3d329cdd0452dc2fde1435998bd3e036538
Showing with 12 additions and 0 deletions.
  1. +12 −0 src/librustc_typeck/check/mod.rs
@@ -562,7 +562,19 @@ pub struct FnCtxt<'a, 'tcx> {
// if type checking is run in parallel.
err_count_on_creation: usize,

/// If `Some`, this stores coercion information for returned
/// expressions. If `None`, this is in a context where return is
/// inappropriate, such as a const expression.
///
/// This is a `RefCell<DynamicCoerceMany>`, which means that we
/// can track all the return expressions and then use them to
/// compute a useful coercion from the set, similar to a match
/// expression or other branching context. You can use methods
/// like `expected_ty` to access the declared return type (if
/// any).
ret_coercion: Option<RefCell<DynamicCoerceMany<'tcx>>>,

/// First span of a return site that we find. Used in error messages.
ret_coercion_span: RefCell<Option<Span>>,

yield_ty: Option<Ty<'tcx>>,

0 comments on commit 5d64b3d

Please sign in to comment.
You can’t perform that action at this time.