rust/tests/ui/impl-trait
Dylan DPC ccf99bd769
Rollup merge of #111980 - compiler-errors:unmapped-substs, r=lcnr
Preserve substs in opaques recorded in typeck results

This means that we now prepopulate MIR with opaques with the right substs.

The first commit is a hack that I think we discussed, having to do with `DefiningAnchor::Bubble` basically being equivalent to `DefiningAnchor::Error` in the new solver, so having to use `DefiningAnchor::Bind` instead, lol.

r? `@lcnr`
2023-06-01 11:09:43 +05:30
..
auxiliary
diagnostics
explicit-generic-args-with-impl-trait diagnostics: remove inconsistent English article "this" from E0107 2023-02-23 10:27:06 -07:00
in-trait Note base types of coercion 2023-05-12 00:10:52 +00:00
issues Don't print backtrace on ICEs in issue-86800.rs. 2023-05-05 07:04:06 +10:00
multiple-lifetimes Rename tests to ensure they don't have overlapping names. 2023-03-22 21:12:40 -07:00
arg-position-impl-trait-too-long.rs Don't print newlines in APITs 2023-05-25 02:45:14 +00:00
arg-position-impl-trait-too-long.stderr Don't print newlines in APITs 2023-05-25 02:45:14 +00:00
associated-impl-trait-type-generic-trait.rs Split out a separate feature gate for impl trait in associated types 2023-04-12 16:17:31 +00:00
associated-impl-trait-type-trivial.rs Split out a separate feature gate for impl trait in associated types 2023-04-12 16:17:31 +00:00
associated-impl-trait-type.rs Split out a separate feature gate for impl trait in associated types 2023-04-12 16:17:31 +00:00
async_scope_creep.rs
auto-trait-leak2.rs
auto-trait-leak2.stderr
auto-trait-leak-rpass.rs
auto-trait-leak.rs
auto-trait-leak.stderr Check that RPITs are compatible with the opaques inferred during HIR typeck too 2023-05-31 17:45:45 +00:00
auto-trait.rs
auto-trait.stderr
autoderef.rs Check nested obligations during coercion unify 2023-05-27 17:37:16 +00:00
bound-normalization-fail.rs
bound-normalization-fail.stderr
bound-normalization-pass.rs Remove save-analysis. 2023-02-16 15:14:45 +11:00
bounds_regression.rs
can-return-unconstrained-closure.rs
closure-calling-parent-fn.rs
closure-in-impl-trait-arg.rs
closure-in-impl-trait.rs
cross-return-site-inference.rs
cross-return-site-inference.stderr
deduce-signature-from-supertrait.rs
deprecated_annotation.rs
divergence.rs
does-not-live-long-enough.rs
does-not-live-long-enough.stderr
dyn-trait-elided-two-inputs-assoc.rs
dyn-trait-elided-two-inputs-param.rs
dyn-trait-elided-two-inputs-ref-assoc.rs
dyn-trait-elided-two-inputs-ref-param.rs
dyn-trait-return-should-be-impl-trait.rs Remove return type sized check hack from hir typeck 2023-05-18 01:53:01 +00:00
dyn-trait-return-should-be-impl-trait.stderr Remove return type sized check hack from hir typeck 2023-05-18 01:53:01 +00:00
equal-hidden-lifetimes.rs Convert a hard-warning about named static lifetimes into lint "unused_lifetimes" 2023-02-22 09:44:26 +08:00
equality2.rs
equality2.stderr Mention fn coercion rules (needs to be expanded) 2023-01-30 21:51:33 +00:00
equality-rpass.rs
equality-rpass.stderr
equality.rs
equality.stderr
example-calendar.rs
example-st.rs
extra-impl-in-trait-impl.fixed improve error for impl<..> impl Trait for Type 2023-05-13 10:51:21 +02:00
extra-impl-in-trait-impl.rs improve error for impl<..> impl Trait for Type 2023-05-13 10:51:21 +02:00
extra-impl-in-trait-impl.stderr improve error for impl<..> impl Trait for Type 2023-05-13 10:51:21 +02:00
extra-item.rs
extra-item.stderr
fallback_inference.rs
fallback_inference.stderr
fallback.rs
feature-self-return-type.rs
feature-self-return-type.stderr
generic-with-implicit-hrtb-without-dyn.edition2015.stderr
generic-with-implicit-hrtb-without-dyn.edition2021.stderr
generic-with-implicit-hrtb-without-dyn.rs
hidden-lifetimes.rs
hidden-lifetimes.stderr Label opaque type for 'captures lifetime' error message 2023-03-03 05:02:34 +00:00
hidden-type-is-opaque-2.rs
hidden-type-is-opaque-2.stderr
hidden-type-is-opaque.rs
impl_fn_associativity.rs
impl_trait_projections.rs
impl_trait_projections.stderr
impl-fn-hrtb-bounds-2.rs
impl-fn-hrtb-bounds-2.stderr Remove index from BrAnon 2023-04-06 23:01:40 -04:00
impl-fn-hrtb-bounds.rs
impl-fn-hrtb-bounds.stderr
impl-fn-parsing-ambiguities.rs
impl-fn-parsing-ambiguities.stderr
impl-fn-predefined-lifetimes.rs
impl-fn-predefined-lifetimes.stderr
impl-generic-mismatch-ab.rs
impl-generic-mismatch-ab.stderr
impl-generic-mismatch.rs
impl-generic-mismatch.stderr
impl-trait-in-macro.rs
impl-trait-in-macro.stderr
impl-trait-plus-priority.rs
impl-trait-plus-priority.stderr
in-assoc-type-unconstrained.rs Use the opaque_types_defined_by query to cheaply check for whether a hidden type may be registered for an opaque type 2023-05-12 10:26:50 +00:00
in-assoc-type-unconstrained.stderr Use the opaque_types_defined_by query to cheaply check for whether a hidden type may be registered for an opaque type 2023-05-12 10:26:50 +00:00
in-assoc-type.rs Use the opaque_types_defined_by query to cheaply check for whether a hidden type may be registered for an opaque type 2023-05-12 10:26:50 +00:00
in-assoc-type.stderr Use the opaque_types_defined_by query to cheaply check for whether a hidden type may be registered for an opaque type 2023-05-12 10:26:50 +00:00
issue-35668.rs
issue-35668.stderr
issue-36792.rs Move test files 2023-04-20 15:06:17 -03:00
issue-46959.rs
issue-49556.rs
issue-49579.rs
issue-49685.rs
issue-51185.rs
issue-54966.rs
issue-54966.stderr
issue-55872-1.rs Split out a separate feature gate for impl trait in associated types 2023-04-12 16:17:31 +00:00
issue-55872-1.stderr
issue-55872-2.drop_tracking_mir.stderr
issue-55872-2.drop_tracking.stderr
issue-55872-2.no_drop_tracking.stderr
issue-55872-2.rs Split out a separate feature gate for impl trait in associated types 2023-04-12 16:17:31 +00:00
issue-55872-3.rs Split out a separate feature gate for impl trait in associated types 2023-04-12 16:17:31 +00:00
issue-55872-3.stderr
issue-55872.rs Split out a separate feature gate for impl trait in associated types 2023-04-12 16:17:31 +00:00
issue-55872.stderr
issue-56445.rs
issue-68532.rs
issue-72911.rs
issue-72911.stderr
issue-86465.rs
issue-86465.stderr
issue-87450.rs
issue-87450.stderr
issue-99073-2.rs
issue-99073-2.stderr
issue-99073.rs
issue-99073.stderr
issue-99642-2.rs
issue-99642.rs
issue-99914.rs
issue-99914.stderr fix: improve the suggestion on future not awaited 2023-02-13 16:23:23 +01:00
issue-100075-2.rs
issue-100075-2.stderr
issue-100075.rs
issue-100075.stderr
issue-100187.rs
issue-102605.rs
issue-102605.stderr fix: improve the suggestion on future not awaited 2023-02-13 16:23:23 +01:00
issue-103181-1.current.stderr Use error term if missing associated item in new solver 2023-05-16 16:02:17 +00:00
issue-103181-1.next.stderr Use error term if missing associated item in new solver 2023-05-16 16:02:17 +00:00
issue-103181-1.rs Use error term if missing associated item in new solver 2023-05-16 16:02:17 +00:00
issue-103181-2.rs
issue-103181-2.stderr
issue-103599.rs
issue-103599.stderr
issue-108591.rs Add tests. 2023-04-16 09:58:08 +00:00
issue-108592.rs Add tests. 2023-04-16 09:58:08 +00:00
lifetimes2.rs
lifetimes.rs
method-suggestion-no-duplication.rs
method-suggestion-no-duplication.stderr
multiple-defining-usages-in-body.rs Check that RPITs are compatible with the opaques inferred during HIR typeck too 2023-05-31 17:45:45 +00:00
multiple-defining-usages-in-body.stderr Check that RPITs are compatible with the opaques inferred during HIR typeck too 2023-05-31 17:45:45 +00:00
must_outlive_least_region_or_bound.rs
must_outlive_least_region_or_bound.stderr Label opaque type for 'captures lifetime' error message 2023-03-03 05:02:34 +00:00
needs_least_region_or_bound.rs
negative-reasoning.rs
negative-reasoning.stderr
nested_impl_trait.rs
nested_impl_trait.stderr pluralize stuff 2023-02-22 21:52:26 +00:00
nested-return-type2-tait2.rs
nested-return-type2-tait2.stderr
nested-return-type2-tait3.rs
nested-return-type2-tait3.stderr
nested-return-type2-tait.rs
nested-return-type2-tait.stderr
nested-return-type2.rs Nested impl traits trigger opaque_hidden_inferred_bound too much 2023-03-23 06:19:52 +00:00
nested-return-type3-tait2.rs
nested-return-type3-tait2.stderr
nested-return-type3-tait3.rs
nested-return-type3-tait3.stderr
nested-return-type3-tait.rs
nested-return-type3-tait.stderr
nested-return-type3.rs Nested impl traits trigger opaque_hidden_inferred_bound too much 2023-03-23 06:19:52 +00:00
nested-return-type4.rs
nested-return-type4.stderr Label opaque type for 'captures lifetime' error message 2023-03-03 05:02:34 +00:00
nested-return-type.rs
nested-rpit-hrtb.rs
nested-rpit-hrtb.stderr
nested-rpit-with-anonymous-lifetimes.rs
nesting.rs
no-method-suggested-traits.rs
no-method-suggested-traits.stderr Special-case item attributes in the suggestion output 2023-04-12 22:50:10 +00:00
no-trait.rs
no-trait.stderr
normalize-tait-in-const.rs Normalize line+col in normalize-tait-in-const test 2023-02-22 17:05:04 +00:00
normalize-tait-in-const.stderr Normalize line+col in normalize-tait-in-const test 2023-02-22 17:05:04 +00:00
object-unsafe-trait-in-return-position-dyn-trait.rs
object-unsafe-trait-in-return-position-dyn-trait.stderr
object-unsafe-trait-in-return-position-impl-trait.rs
object-unsafe-trait-in-return-position-impl-trait.stderr
point-to-type-err-cause-on-impl-trait-return.rs Remove return type sized check hack from hir typeck 2023-05-18 01:53:01 +00:00
point-to-type-err-cause-on-impl-trait-return.stderr Remove return type sized check hack from hir typeck 2023-05-18 01:53:01 +00:00
printing-binder.rs
printing-binder.stderr
private_unused.rs
projection-mismatch-in-impl-where-clause.rs
projection-mismatch-in-impl-where-clause.stderr
projection.rs
question_mark.rs
recursive-generator.rs
recursive-generator.stderr
recursive-impl-trait-type-direct.rs
recursive-impl-trait-type-indirect.drop_tracking_mir.stderr drop_tracking_mir: diagnose recursive generator. 2023-03-05 08:29:35 +00:00
recursive-impl-trait-type-indirect.drop_tracking.stderr
recursive-impl-trait-type-indirect.no_drop_tracking.stderr
recursive-impl-trait-type-indirect.rs
recursive-impl-trait-type-through-non-recursive.rs
recursive-impl-trait-type-through-non-recursive.stderr
recursive-type-alias-impl-trait-declaration-too-subtle-2.rs
recursive-type-alias-impl-trait-declaration-too-subtle-2.stderr
recursive-type-alias-impl-trait-declaration-too-subtle.rs
recursive-type-alias-impl-trait-declaration-too-subtle.stderr Use the opaque_types_defined_by query to cheaply check for whether a hidden type may be registered for an opaque type 2023-05-12 10:26:50 +00:00
recursive-type-alias-impl-trait-declaration.rs
region-escape-via-bound-contravariant-closure.rs
region-escape-via-bound-contravariant.rs
region-escape-via-bound.rs
region-escape-via-bound.stderr Label opaque type for 'captures lifetime' error message 2023-03-03 05:02:34 +00:00
return-position-impl-trait-minimal.rs
rpit-assoc-pair-with-lifetime.rs
rpit-not-sized.rs
rpit-not-sized.stderr
static-return-lifetime-infered.rs
static-return-lifetime-infered.stderr Label opaque type for 'captures lifetime' error message 2023-03-03 05:02:34 +00:00
suggest-calling-rpit-closure.rs
suggest-calling-rpit-closure.stderr
trait_resolution.rs
trait_type.rs
trait_type.stderr
two_tait_defining_each_other2.rs
two_tait_defining_each_other2.stderr
two_tait_defining_each_other3.rs
two_tait_defining_each_other3.stderr
two_tait_defining_each_other.rs
two_tait_defining_each_other.stderr
type_parameters_captured.rs
type_parameters_captured.stderr
type-alias-generic-param.rs Split out a separate feature gate for impl trait in associated types 2023-04-12 16:17:31 +00:00
type-alias-impl-trait-in-fn-body.rs
type-arg-mismatch-due-to-impl-trait.rs
type-arg-mismatch-due-to-impl-trait.stderr
unactionable_diagnostic.fixed
unactionable_diagnostic.rs
unactionable_diagnostic.stderr
universal_hrtb_anon.rs
universal_hrtb_named.rs
universal_in_adt_in_parameters.rs
universal_in_impl_trait_in_parameters.rs
universal_in_trait_defn_parameters.rs
universal_multiple_bounds.rs
universal_wrong_bounds.rs
universal_wrong_bounds.stderr Special-case item attributes in the suggestion output 2023-04-12 22:50:10 +00:00
universal_wrong_hrtb.rs
universal_wrong_hrtb.stderr
universal-mismatched-type.rs
universal-mismatched-type.stderr
universal-two-impl-traits.rs
universal-two-impl-traits.stderr
unsafety-checking-cycle.rs
wf-eval-order.rs vars are ? 2023-04-25 19:53:09 +00:00
where-allowed-2.rs
where-allowed-2.stderr
where-allowed.rs Split out a separate feature gate for impl trait in associated types 2023-04-12 16:17:31 +00:00
where-allowed.stderr Split out a separate feature gate for impl trait in associated types 2023-04-12 16:17:31 +00:00
xcrate_simple.rs
xcrate.rs