message: Dedup tag reading
diff: @@ -455,10 +455,7 @@ impl<'a, 'mir, 'tcx: 'mir + 'a> EvalContextExt<'tcx> for EvalContext<'a, 'mir, '
  }
  // Discriminant field for enums (where applicable).
  - Variants::Tagged { ref tag, .. } => {
  - assert_eq!(i, 0);
  - return Ok(tag.value.to_ty(tcx))
  - },
  + Variants::Tagged { tag: ref discr, .. } |
  Variants::NicheFilling { niche: ref discr, .. } => {
  assert_eq!(i, 0);
  return Ok(discr.value.to_ty(tcx))
  