Rollup merge of #104505 - WaffleLapkin:no-double-spaces-in-comments, r=jackh726
Remove double spaces after dots in comments Most of the comments do not have double spaces, so I assume these are typos.
This commit is contained in:
commit
68f12338af
158 changed files with 333 additions and 313 deletions
|
@ -2218,7 +2218,7 @@ impl<'tcx> InferCtxtPrivExt<'tcx> for TypeErrCtxt<'_, 'tcx> {
|
|||
// This is kind of a hack: it frequently happens that some earlier
|
||||
// error prevents types from being fully inferred, and then we get
|
||||
// a bunch of uninteresting errors saying something like "<generic
|
||||
// #0> doesn't implement Sized". It may even be true that we
|
||||
// #0> doesn't implement Sized". It may even be true that we
|
||||
// could just skip over all checks where the self-ty is an
|
||||
// inference variable, but I was afraid that there might be an
|
||||
// inference variable created, registered as an obligation, and
|
||||
|
|
|
@ -2312,7 +2312,7 @@ impl<'tcx> TypeErrCtxtExt<'tcx> for TypeErrCtxt<'_, 'tcx> {
|
|||
// generator interior are not generally known, so we
|
||||
// want to erase them when comparing (and anyway,
|
||||
// `Send` and other bounds are generally unaffected by
|
||||
// the choice of region). When erasing regions, we
|
||||
// the choice of region). When erasing regions, we
|
||||
// also have to erase late-bound regions. This is
|
||||
// because the types that appear in the generator
|
||||
// interior generally contain "bound regions" to
|
||||
|
@ -2328,7 +2328,7 @@ impl<'tcx> TypeErrCtxtExt<'tcx> for TypeErrCtxt<'_, 'tcx> {
|
|||
};
|
||||
|
||||
// Get the typeck results from the infcx if the generator is the function we are currently
|
||||
// type-checking; otherwise, get them by performing a query. This is needed to avoid
|
||||
// type-checking; otherwise, get them by performing a query. This is needed to avoid
|
||||
// cycles. If we can't use resolved types because the generator comes from another crate,
|
||||
// we still provide a targeted error but without all the relevant spans.
|
||||
let generator_data = match &self.typeck_results {
|
||||
|
|
|
@ -809,7 +809,7 @@ fn contains_illegal_self_type_reference<'tcx, T: TypeVisitable<'tcx>>(
|
|||
// SomeTrait` is in fact a supertrait of the
|
||||
// current trait. In that case, this type is
|
||||
// legal, because the type `X` will be specified
|
||||
// in the object type. Note that we can just use
|
||||
// in the object type. Note that we can just use
|
||||
// direct equality here because all of these types
|
||||
// are part of the formal parameter listing, and
|
||||
// hence there should be no inference variables.
|
||||
|
|
|
@ -148,7 +148,7 @@ impl<'tcx> ProjectionCandidateSet<'tcx> {
|
|||
}
|
||||
|
||||
// Prefer where-clauses. As in select, if there are multiple
|
||||
// candidates, we prefer where-clause candidates over impls. This
|
||||
// candidates, we prefer where-clause candidates over impls. This
|
||||
// may seem a bit surprising, since impls are the source of
|
||||
// "truth" in some sense, but in fact some of the impls that SEEM
|
||||
// applicable are not, because of nested obligations. Where
|
||||
|
@ -1034,7 +1034,7 @@ fn opt_normalize_projection_type<'a, 'b, 'tcx>(
|
|||
}
|
||||
Err(ProjectionCacheEntry::InProgress) => {
|
||||
// Under lazy normalization, this can arise when
|
||||
// bootstrapping. That is, imagine an environment with a
|
||||
// bootstrapping. That is, imagine an environment with a
|
||||
// where-clause like `A::B == u32`. Now, if we are asked
|
||||
// to normalize `A::B`, we will want to check the
|
||||
// where-clauses in scope. So we will try to unify `A::B`
|
||||
|
|
|
@ -398,7 +398,7 @@ impl<'cx, 'tcx> SelectionContext<'cx, 'tcx> {
|
|||
}
|
||||
ty::Param(..) | ty::Alias(ty::Projection, ..) => {
|
||||
// In these cases, we don't know what the actual
|
||||
// type is. Therefore, we cannot break it down
|
||||
// type is. Therefore, we cannot break it down
|
||||
// into its constituent types. So we don't
|
||||
// consider the `..` impl but instead just add no
|
||||
// candidates: this means that typeck will only
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
//!
|
||||
//! Confirmation unifies the output type parameters of the trait
|
||||
//! with the values found in the obligation, possibly yielding a
|
||||
//! type error. See the [rustc dev guide] for more details.
|
||||
//! type error. See the [rustc dev guide] for more details.
|
||||
//!
|
||||
//! [rustc dev guide]:
|
||||
//! https://rustc-dev-guide.rust-lang.org/traits/resolution.html#confirmation
|
||||
|
@ -356,8 +356,8 @@ impl<'cx, 'tcx> SelectionContext<'cx, 'tcx> {
|
|||
nested,
|
||||
);
|
||||
|
||||
// Adds the predicates from the trait. Note that this contains a `Self: Trait`
|
||||
// predicate as usual. It won't have any effect since auto traits are coinductive.
|
||||
// Adds the predicates from the trait. Note that this contains a `Self: Trait`
|
||||
// predicate as usual. It won't have any effect since auto traits are coinductive.
|
||||
obligations.extend(trait_obligations);
|
||||
|
||||
debug!(?obligations, "vtable_auto_impl");
|
||||
|
|
|
@ -430,7 +430,7 @@ impl<'cx, 'tcx> SelectionContext<'cx, 'tcx> {
|
|||
// impl<T:Clone> Vec<T> { fn push_clone(...) { ... } }
|
||||
//
|
||||
// and we were to see some code `foo.push_clone()` where `boo`
|
||||
// is a `Vec<Bar>` and `Bar` does not implement `Clone`. If
|
||||
// is a `Vec<Bar>` and `Bar` does not implement `Clone`. If
|
||||
// we were to winnow, we'd wind up with zero candidates.
|
||||
// Instead, we select the right impl now but report "`Bar` does
|
||||
// not implement `Clone`".
|
||||
|
@ -2324,7 +2324,7 @@ impl<'cx, 'tcx> SelectionContext<'cx, 'tcx> {
|
|||
// Matching
|
||||
//
|
||||
// Matching is a common path used for both evaluation and
|
||||
// confirmation. It basically unifies types that appear in impls
|
||||
// confirmation. It basically unifies types that appear in impls
|
||||
// and traits. This does affect the surrounding environment;
|
||||
// therefore, when used during evaluation, match routines must be
|
||||
// run inside of a `probe()` so that their side-effects are
|
||||
|
@ -2643,7 +2643,7 @@ impl<'o, 'tcx> TraitObligationStack<'o, 'tcx> {
|
|||
/// In Issue #60010, we found a bug in rustc where it would cache
|
||||
/// these intermediate results. This was fixed in #60444 by disabling
|
||||
/// *all* caching for things involved in a cycle -- in our example,
|
||||
/// that would mean we don't cache that `Bar<T>: Send`. But this led
|
||||
/// that would mean we don't cache that `Bar<T>: Send`. But this led
|
||||
/// to large slowdowns.
|
||||
///
|
||||
/// Specifically, imagine this scenario, where proving `Baz<T>: Send`
|
||||
|
@ -2669,7 +2669,7 @@ impl<'o, 'tcx> TraitObligationStack<'o, 'tcx> {
|
|||
/// a result at `reached_depth`, so it marks the *current* solution as
|
||||
/// provisional as well. If an error is encountered, we toss out any
|
||||
/// provisional results added from the subtree that encountered the
|
||||
/// error. When we pop the node at `reached_depth` from the stack, we
|
||||
/// error. When we pop the node at `reached_depth` from the stack, we
|
||||
/// can commit all the things that remain in the provisional cache.
|
||||
struct ProvisionalEvaluationCache<'tcx> {
|
||||
/// next "depth first number" to issue -- just a counter
|
||||
|
@ -2780,7 +2780,7 @@ impl<'tcx> ProvisionalEvaluationCache<'tcx> {
|
|||
}
|
||||
|
||||
/// Invoked when the node with dfn `dfn` does not get a successful
|
||||
/// result. This will clear out any provisional cache entries
|
||||
/// result. This will clear out any provisional cache entries
|
||||
/// that were added since `dfn` was created. This is because the
|
||||
/// provisional entries are things which must assume that the
|
||||
/// things on the stack at the time of their creation succeeded --
|
||||
|
|
|
@ -418,7 +418,7 @@ pub(crate) fn assoc_def(
|
|||
} else {
|
||||
// This is saying that neither the trait nor
|
||||
// the impl contain a definition for this
|
||||
// associated type. Normally this situation
|
||||
// associated type. Normally this situation
|
||||
// could only arise through a compiler bug --
|
||||
// if the user wrote a bad item name, it
|
||||
// should have failed in astconv.
|
||||
|
|
|
@ -76,7 +76,7 @@ pub fn obligations<'tcx>(
|
|||
}
|
||||
|
||||
/// Returns the obligations that make this trait reference
|
||||
/// well-formed. For example, if there is a trait `Set` defined like
|
||||
/// well-formed. For example, if there is a trait `Set` defined like
|
||||
/// `trait Set<K:Eq>`, then the trait reference `Foo: Set<Bar>` is WF
|
||||
/// if `Bar: Eq`.
|
||||
pub fn trait_obligations<'tcx>(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue