granite-rust/tests
Matthias Krüger c14d912cd2
Rollup merge of #110673 - compiler-errors:alias-bounds-2, r=lcnr
Make alias bounds sound in the new solver (take 2)

Make alias bounds sound in the new solver (in a way that does not require coinduction) by only considering them for projection types whose corresponding trait refs come from a param-env candidate.

That is, given `<T as Trait>::Assoc: Bound`, we only *really* need to consider the alias bound if `T: Trait` is satisfied via a param-env candidate. If it's instead satisfied, e.g., via an user provided impl candidate or a , then that impl should have a concrete type to which we could otherwise normalize `<T as Trait>::Assoc`, and that concrete type is then responsible to prove the `Bound` on it.

Similar consideration is given to opaque types, since we only need to consider alias bounds if we're *not* in reveal-all mode, since similarly we'd be able to reveal the opaque types and prove any bounds that way.

This does not remove that hacky "eager projection replacement" logic from object bounds, which are somewhat like alias bounds. But removing this eager normalization behavior (added in #108333) would require full coinduction to be enabled. Compare to #110628, which does remove this object-bound custom logic but requires coinduction to be sound.

r? `@lcnr`
2023-05-10 06:12:13 +02:00
..
assembly Tune the is_ascii implementation used for short slices 2023-05-06 22:56:43 -07:00
auxiliary
codegen Rollup merge of #111282 - scottmcm:remove-unneeded-assumes, r=workingjubilee 2023-05-09 20:49:33 +02:00
codegen-units Turn off inlining for codegen-unit tests 2023-04-07 15:46:45 -04:00
debuginfo Rollup merge of #108668 - gibbyfree:stabilizedebuggervisualizer, r=wesleywiser 2023-05-02 11:44:51 +05:30
incremental Add needs-unwind annotations to tests that need stack unwinding 2023-05-02 12:07:55 +00:00
mir-opt Add needs-unwind. 2023-05-09 19:39:46 +00:00
pretty Rollup merge of #111042 - Zalathar:no-coverage, r=wesleywiser 2023-05-01 17:10:24 +02:00
run-make Rollup merge of #110304 - cchiw:master, r=davidtwco 2023-05-09 12:33:44 +05:30
run-make-fulldeps Restrict From<S> for {D,Subd}iagnosticMessage. 2023-05-03 08:44:39 +10:00
run-pass-valgrind
rustdoc IAT: Rustdoc integration 2023-05-04 16:59:11 +02:00
rustdoc-gui Rollup merge of #110371 - notriddle:notriddle/search-corrections, r=GuillaumeGomez 2023-05-03 16:42:49 -07:00
rustdoc-js Rollup merge of #110780 - notriddle:notriddle/slice-index, r=GuillaumeGomez 2023-05-06 09:09:31 +09:00
rustdoc-js-std rustdoc-search: add support for nested generics 2023-04-14 14:55:45 -07:00
rustdoc-json Update tests 2023-04-29 13:01:46 +01:00
rustdoc-ui Rollup merge of #110989 - jyn514:bug-report-url, r=WaffleLapkin 2023-05-06 13:30:04 +02:00
ui Rollup merge of #110673 - compiler-errors:alias-bounds-2, r=lcnr 2023-05-10 06:12:13 +02:00
ui-fulldeps Make spans a bit better 2023-05-08 03:34:46 +00:00
COMPILER_TESTS.md