Fix some nits
This commit is contained in:
parent
e7e7c360af
commit
ef9f0ab43e
@ -1869,20 +1869,21 @@ impl<'a> LoweringContext<'a> {
|
||||
};
|
||||
let attrs = vec![attr];
|
||||
|
||||
// Ok(val) => { #[allow(unreachable_code)] val }
|
||||
// Ok(val) => #[allow(unreachable_code)] val,
|
||||
let ok_arm = {
|
||||
let val_ident = self.str_to_ident("val");
|
||||
let val_pat = self.pat_ident(e.span, val_ident);
|
||||
let val_expr = P(self.expr_ident_with_attrs(e.span,
|
||||
val_ident,
|
||||
val_pat.id,
|
||||
From::from(attrs.clone())));
|
||||
ThinVec::from(attrs.clone())));
|
||||
let ok_pat = self.pat_ok(e.span, val_pat);
|
||||
|
||||
self.arm(hir_vec![ok_pat], val_expr)
|
||||
};
|
||||
|
||||
// Err(err) => return Carrier::from_error(From::from(err))
|
||||
// Err(err) => #[allow(unreachable_code)]
|
||||
// return Carrier::from_error(From::from(err)),
|
||||
let err_arm = {
|
||||
let err_ident = self.str_to_ident("err");
|
||||
let err_local = self.pat_ident(e.span, err_ident);
|
||||
@ -1902,7 +1903,7 @@ impl<'a> LoweringContext<'a> {
|
||||
|
||||
let ret_expr = P(self.expr(e.span,
|
||||
hir::Expr_::ExprRet(Some(from_err_expr)),
|
||||
From::from(attrs)));
|
||||
ThinVec::from(attrs)));
|
||||
|
||||
let err_pat = self.pat_err(e.span, err_local);
|
||||
self.arm(hir_vec![err_pat], ret_expr)
|
||||
|
@ -322,6 +322,8 @@ fn check_arms<'a, 'tcx>(cx: &mut MatchCheckCtxt<'a, 'tcx>,
|
||||
hir_pat.id, diagnostic);
|
||||
},
|
||||
|
||||
// Unreachable patterns in try expressions occur when one of the arms
|
||||
// are an uninhabited type. Which is OK.
|
||||
hir::MatchSource::TryDesugar => {}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user