rust/compiler/rustc_hir_analysis/src
Matthias Krüger c00eac3558
Rollup merge of #104592 - ComputerDruid:async_check, r=compiler-errors
Ensure async trait impls are async (or otherwise return an opaque type)

As a workaround for the full `#[refine]` semantics not being implemented
yet, forbit returning a concrete future type like `Box<dyn Future>` or a
manually implemented Future.

`-> impl Future` is still permitted; while that can also cause
accidental refinement, that's behind a different feature gate
(`return_position_impl_trait_in_trait`) and that problem exists
regardless of whether the trait method is async, so will have to be
solved more generally.

Fixes https://github.com/rust-lang/rust/issues/102745
2022-12-15 12:46:00 +01:00
..
astconv Remove TraitRef::new 2022-12-14 15:36:39 +00:00
check Rollup merge of #104592 - ComputerDruid:async_check, r=compiler-errors 2022-12-15 12:46:00 +01:00
coherence Combine identical alias arms 2022-12-13 17:48:55 +00:00
collect Auto merge of #104986 - compiler-errors:opaques, r=oli-obk 2022-12-14 01:19:24 +00:00
impl_wf_check Introduce PredicateKind::Clause 2022-11-25 00:04:54 -03:00
outlives Combine projection and opaque into alias 2022-12-13 17:48:55 +00:00
structured_errors Change how suggested lifetime args are computed. 2022-11-24 17:48:42 +00:00
variance Prevent the creation of TraitRef without dedicated methods 2022-12-14 15:36:39 +00:00
bounds.rs Stop passing the self-type as a separate argument. 2022-11-21 20:39:46 +00:00
check_unused.rs Remove useless filter in unused extern crate check. 2022-12-03 09:23:03 +00:00
collect.rs Move some codegen-y methods from rustc_hir_analysis::collect -> rustc_codegen_ssa 2022-12-13 05:01:36 +00:00
constrained_generic_params.rs Combine projection and opaque into alias 2022-12-13 17:48:55 +00:00
errors.rs Ensure async trait impls are async (or otherwise return an opaque type) 2022-12-14 16:38:21 -08:00
hir_wf_check.rs Convert predicates into Predicate in the Obligation constructor 2022-11-16 09:25:19 +00:00
impl_wf_check.rs Rename some OwnerId fields. 2022-10-29 20:28:38 +11:00
lib.rs Make ObligationCtxt::normalize take cause by borrow 2022-11-28 17:35:40 +00:00
structured_errors.rs rustc_typeck to rustc_hir_analysis 2022-09-27 10:37:23 +02:00