SizedBoxType,
/// Inline asm operand type must be `Sized`.
InlineAsmSized,
- /// `[T, ..n]` implies that `T` must be `Copy`.
- /// If the function in the array repeat expression is a `const fn`,
- /// display a help message suggesting to move the function call to a
- /// new `const` item while saying that `T` doesn't implement `Copy`.
- RepeatVec(bool),
+ /// `[expr; N]` requires `type_of(expr): Copy`.
+ RepeatElementCopy {
+ /// If element is a `const fn` we display a help message suggesting to move the
+ /// function call to a new `const` item while saying that `T` doesn't implement `Copy`.
+ is_const_fn: bool,
+ },
/// Types of fields (other than the last, except for packed structs) in a struct must be sized.
FieldSized {
/// Error derived when matching traits/impls; see ObligationCause for more details
CompareImplMethodObligation {
- impl_item_def_id: DefId,
+ impl_item_def_id: LocalDefId,
trait_item_def_id: DefId,
},
/// Error derived when matching traits/impls; see ObligationCause for more details
CompareImplTypeObligation {
- impl_item_def_id: DefId,
+ impl_item_def_id: LocalDefId,
trait_item_def_id: DefId,
},
/// Checking that the bounds of a trait's associated type hold for a given impl
CheckAssociatedTypeBounds {
- impl_item_def_id: DefId,
+ impl_item_def_id: LocalDefId,
trait_item_def_id: DefId,
},
- /// Checking that this expression can be assigned where it needs to be
- // FIXME(eddyb) #11161 is the original Expr required?
+ /// Checking that this expression can be assigned to its target.
ExprAssignable,
/// Computing common supertype in the arms of a match expression
/// // Case A: ImplSource points at a specific impl. Only possible when
/// // type is concretely known. If the impl itself has bounded
/// // type parameters, ImplSource will carry resolutions for those as well:
-/// concrete.clone(); // ImpleSource(Impl_1, [ImplSource(Impl_2, [ImplSource(Impl_3)])])
+/// concrete.clone(); // ImplSource(Impl_1, [ImplSource(Impl_2, [ImplSource(Impl_3)])])
///
/// // Case A: ImplSource points at a specific impl. Only possible when
/// // type is concretely known. If the impl itself has bounded