rust/tests
Matthias Krüger 4f2af123eb
Rollup merge of #131033 - compiler-errors:precise-capturing-in-traits, r=spastorino
Precise capturing in traits

This PR begins to implement `feature(precise_capturing_in_traits)`, which enables using the `impl Trait + use<..>` syntax for RPITITs. It implements this by giving the desugared GATs variance, and representing the uncaptured lifetimes as bivariant, like how opaque captures work.

Right now, I've left out implementing a necessary extension to the `refining_impl_trait` lint, and also I've made it so that all RPITITs always capture the parameters that come from the trait, because I'm not totally yet convinced that it's sound to not capture these args. It's certainly required to capture the type and const parameters from the trait (e.g. Self), or else users could bivariantly relate two RPITIT args that come from different impls, but region parameters don't affect trait selection in the same way, so it *may* be possible to relax this in the future. Let's stay conservative for now, though.

I'm not totally sure what tests could be added on top of the ones I already added, since we really don't need to exercise the `precise_capturing` feature but simply what makes it special for RPITITs.

r? types

Tracking issue:
* #130044
2024-10-10 22:00:48 +02:00
..
assembly more asm! -> naked_asm! in tests 2024-10-06 18:12:25 +02:00
auxiliary
codegen Auto merge of #131387 - Zalathar:rollup-kprp512, r=Zalathar 2024-10-08 04:38:04 +00:00
codegen-units Fix and enable disabled codegen-units tests 2024-08-10 14:03:27 -04:00
coverage Simplify the directives for ignoring coverage-test modes 2024-10-08 22:51:53 +11:00
coverage-run-rustdoc coverage: Extract hole spans from HIR instead of MIR 2024-07-08 21:22:56 +10:00
crashes Rollup merge of #131491 - lcnr:nalgebra-perrrrf, r=compiler-errors 2024-10-10 12:49:22 +02:00
debuginfo Reorder stack spills so that constants come later. 2024-09-17 16:45:26 -07:00
incremental Bless incremental tests. 2024-10-04 23:50:01 +00:00
mir-opt Disable slice_iter mir-opt test in debug builds 2024-10-07 12:23:27 -04:00
pretty Use doc(hidden) instead of allow(missing_docs) in the test harness 2024-09-11 12:14:35 +02:00
run-make Rollup merge of #131435 - jieyouxu:macos-pipe, r=Zalathar 2024-10-09 20:27:25 +02:00
rustdoc Auto merge of #131076 - lukas-code:doc-stab2, r=notriddle 2024-10-01 04:30:33 +00:00
rustdoc-gui Strengthen some GUI tests 2024-10-09 21:23:20 +02:00
rustdoc-js rustdoc-search: allow trailing Foo -> arg search 2024-09-05 17:58:05 -07:00
rustdoc-js-std Fix rustdoc-js-std path-ordering test due to API removal 2024-10-02 11:15:48 +02:00
rustdoc-json Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
rustdoc-ui Rollup merge of #131260 - notriddle:notriddle/disambiguator-error, r=GuillaumeGomez 2024-10-04 19:19:25 -07:00
ui Rollup merge of #131033 - compiler-errors:precise-capturing-in-traits, r=spastorino 2024-10-10 22:00:48 +02:00
ui-fulldeps Remove feature(control_flow_enum) in tests 2024-09-25 19:00:19 -07:00
COMPILER_TESTS.md