Skip to content

Commit fe5d84d

Browse files
committed
Simplify
1 parent a591ede commit fe5d84d

File tree

2 files changed

+13
-18
lines changed

2 files changed

+13
-18
lines changed

src/librustc_mir/hair/pattern/_match.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -354,7 +354,7 @@ impl PatternFolder<'tcx> for LiteralExpander<'tcx> {
354354
}
355355

356356
impl<'tcx> Pat<'tcx> {
357-
fn is_wildcard(&self) -> bool {
357+
pub(super) fn is_wildcard(&self) -> bool {
358358
match *self.kind {
359359
PatKind::Binding { subpattern: None, .. } | PatKind::Wild => true,
360360
_ => false,

src/librustc_mir/hair/pattern/check_match.rs

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -466,34 +466,29 @@ fn check_exhaustive<'p, 'tcx>(
466466
};
467467
// In the case of an empty match, replace the '`_` not covered' diagnostic with something more
468468
// informative.
469+
let mut err;
469470
if is_empty_match && !non_empty_enum {
470-
let mut err = create_e0004(
471+
err = create_e0004(
471472
cx.tcx.sess,
472473
sp,
473474
format!("non-exhaustive patterns: type `{}` is non-empty", scrut_ty),
474475
);
475-
err.help(
476-
"ensure that all possible cases are being handled, \
477-
possibly by adding wildcards or more match arms",
476+
} else {
477+
let joined_patterns = joined_uncovered_patterns(&witnesses);
478+
err = create_e0004(
479+
cx.tcx.sess,
480+
sp,
481+
format!("non-exhaustive patterns: {} not covered", joined_patterns),
478482
);
479-
adt_defined_here(cx, &mut err, scrut_ty, &[]);
480-
err.emit();
481-
return;
482-
}
483+
err.span_label(sp, pattern_not_covered_label(&witnesses, &joined_patterns));
484+
};
483485

484-
let joined_patterns = joined_uncovered_patterns(&witnesses);
485-
let mut err = create_e0004(
486-
cx.tcx.sess,
487-
sp,
488-
format!("non-exhaustive patterns: {} not covered", joined_patterns),
489-
);
490-
err.span_label(sp, pattern_not_covered_label(&witnesses, &joined_patterns));
491486
adt_defined_here(cx, &mut err, scrut_ty, &witnesses);
492487
err.help(
493488
"ensure that all possible cases are being handled, \
494489
possibly by adding wildcards or more match arms",
495-
)
496-
.emit();
490+
);
491+
err.emit();
497492
}
498493

499494
fn joined_uncovered_patterns(witnesses: &[super::Pat<'_>]) -> String {

0 commit comments

Comments
 (0)