rust/tests
Matthias Krüger 692d764e53
Rollup merge of #114267 - compiler-errors:rpitit-opaque-bounds, r=spastorino
Map RPITIT's opaque type bounds back from projections to opaques

An RPITIT in a program's AST is eventually translated into both a projection GAT and an opaque. The opaque is used for default trait methods, like:

```
trait Foo {
  fn bar() -> impl Sized { 0i32 }
}
```

The item bounds for both the projection and opaque are identical, and both have a *projection* self ty. This is mostly okay, since we can normalize this projection within the default trait method body to the opaque, but it does two things:
1. it leads to bugs in places where we don't normalize item bounds, like `deduce_future_output_from_obligations`
2. it leads to extra match arms that are both suspicious looking and also easy to miss

This PR maps the opaque type bounds of the RPITIT's *opaque* back to the opaque's self type to avoid this quirk. Then we can fix the UI test for #108304 (1.) and also remove a bunch of match arms (2.).

Fixes #108304

r? `@spastorino`
2023-07-31 16:57:55 +02:00
..
assembly Update the minimum external LLVM to 15 2023-07-27 14:07:08 -07:00
auxiliary
codegen Replace ignore-everything with only-arch 2023-07-29 15:49:07 -07:00
codegen-units
debuginfo Replace ignore-everything with only-arch 2023-07-29 15:49:07 -07:00
incremental Querify unused trait check. 2023-07-16 21:51:00 +00:00
mir-opt Auto merge of #114011 - RalfJung:place-projection, r=oli-obk 2023-07-25 14:18:08 +00:00
pretty
run-coverage refactor(rustc_middle): Substs -> GenericArg 2023-07-14 13:27:35 +01:00
run-coverage-rustdoc Re-bless the newly-migrated tests 2023-06-28 11:09:19 +10:00
run-make Auto merge of #114148 - cuviper:drop-llvm-14, r=nikic 2023-07-29 14:57:47 +00:00
run-make-fulldeps On nightly, dump ICE backtraces to disk 2023-07-19 14:10:07 +00:00
run-pass-valgrind
rustdoc Mark lazy_type_alias as incomplete 2023-07-29 19:47:15 +00:00
rustdoc-gui Migrate GUI colors test to original CSS color format 2023-07-23 13:05:40 +02:00
rustdoc-js
rustdoc-js-std Auto merge of #108537 - GuillaumeGomez:rustdoc-search-whitespace-as-separator, r=notriddle 2023-07-02 18:49:29 +00:00
rustdoc-json Auto merge of #113574 - GuillaumeGomez:rustdoc-json-strip-hidden-impl, r=aDotInTheVoid,notriddle 2023-07-18 02:47:03 +00:00
rustdoc-ui validate doc(masked) 2023-07-24 18:04:35 +02:00
ui Rollup merge of #114267 - compiler-errors:rpitit-opaque-bounds, r=spastorino 2023-07-31 16:57:55 +02:00
ui-fulldeps Bump syn dependency 2023-07-26 08:42:40 +00:00
COMPILER_TESTS.md