about summary refs log tree commit diff
path: root/compiler/rustc_infer/src/traits/engine.rs
AgeCommit message (Collapse)AuthorLines
2025-09-15Add documentation for select_where_possible and select_all_or_errortiif-1/+16
2025-06-25Compute hard errors without diagnostics in ↵Michael Goulet-1/+2
impl_intersection_has_impossible_obligation
2025-04-22Properly drain pending obligations for coroutinesMichael Goulet-1/+1
2025-02-08Rustfmtbjorn3-6/+9
2024-12-02Assert that obligations are empty before deeply normalizingMichael Goulet-0/+2
2024-10-12Swap Vec<PredicateObligation> to type aliasGnomedDev-5/+5
2024-09-22Reformat using the new identifier sorting from rustfmtMichael Goulet-9/+6
2024-07-29Reformat `use` declarations.Nicholas Nethercote-2/+2
The previous commit updated `rustfmt.toml` appropriately. This commit is the outcome of running `x fmt --all` with the new formatting options.
2024-06-03Nits and formattingMichael Goulet-6/+27
2024-06-03Make TraitEngines generic over errorMichael Goulet-5/+14
2024-06-03Remove unnecessary extension traitMichael Goulet-20/+16
2024-05-16Remove trivial Binder::dummy callsMichael Goulet-1/+1
2024-05-16Rename ToPredicate for UpcastMichael Goulet-2/+2
2024-04-29Remove `extern crate rustc_macros` from numerous crates.Nicholas Nethercote-0/+1
2024-02-16NitsMichael Goulet-0/+1
2024-02-16Move trait into attr so it's greppableMichael Goulet-2/+2
2024-02-16Use extension trait deriveMichael Goulet-12/+2
2023-08-02Remove constness from `TraitPredicate`Deadbeef-1/+1
2023-04-25Replace `tcx.mk_trait_ref` with `ty::TraitRef::new`Maybe Waffle-1/+1
2023-04-13Rollup merge of #110220 - lcnr:regionzz, r=compiler-errorsMatthias Krüger-0/+2
cleanup our region error API - require `TypeErrCtxt` to always result in an error, closing #108810 - move `resolve_regions_and_report_errors` to the `ObligationCtxt` - call `process_registered_region_obligations` in `resolve_regions` - move `resolve_regions` into the `outlives` submodule - add `#[must_use]` to functions returning lists of errors r? types
2023-04-12`#[must_use]` for fns returning a list of errorslcnr-0/+2
2023-04-10Report overflows gracefully with new solverMichael Goulet-2/+2
2023-01-27Pacify tidy.Camille GILLOT-1/+1
2023-01-27Compute generator saved locals on MIR.Camille GILLOT-0/+8
2023-01-27Separate trait selection from ambiguity reporting.Camille GILLOT-2/+13
2023-01-22Store relationships on InherentSantiago Pastorino-3/+0
2022-11-24Remove normalize_projection_typeSantiago Pastorino-8/+0
2022-11-21Stop passing the self-type as a separate argument.Oli Scherer-1/+1
2022-11-21Allow iterators instead of requiring slices that will get turned into iteratorsOli Scherer-1/+1
2022-11-21Assert that various types have the right amount of generic args and fix the ↵Oli Scherer-1/+1
sites that used the wrong amount
2022-10-07Remove TypeckResults from InferCtxtCameron Steffen-8/+7
2021-12-13Remove `in_band_lifetimes` from `rustc_infer`LegionMammal978-1/+1
This crate actually had a typo `'ctx` in one of its functions: ```diff -pub fn same_type_modulo_infer(a: Ty<'tcx>, b: Ty<'ctx>) -> bool { +pub fn same_type_modulo_infer<'tcx>(a: Ty<'tcx>, b: Ty<'tcx>) -> bool { ```
2021-12-12Revert "Auto merge of #91491 - spastorino:revert-91354, r=oli-obk"Deadbeef-19/+1
This reverts commit ff2439b7b9bafcfdff86b7847128014699df8442, reversing changes made to 2a9e0831d6603d87220cedd1b1293e2eb82ef55c.
2021-12-03Revert "Auto merge of #91354 - fee1-dead:const_env, r=spastorino"Santiago Pastorino-1/+19
This reverts commit 18bb8c61a975fff6424cda831ace5b0404277145, reversing changes made to d9baa361902b172be716f96619b909f340802dea.
2021-11-29Reformat everythingDeadbeef-4/+2
2021-11-29Completely remove ConstnessAndOli Scherer-1/+1
2021-11-29Use the constness from the param env instead of having a separate dimension ↵Oli Scherer-18/+2
for it This breaks a ~const test that will be fixed in a follow up commit of this PR
2021-11-08fmtDeadbeef-8/+3
2021-11-08Make select_* methods return Vec for TraitEngineDeadbeef-4/+4
2021-09-24Rollup merge of #89001 - jackh726:binder-cleanup, r=nikomatsakisJubilee-1/+1
Be explicit about using Binder::dummy This is somewhat of a late followup to the binder refactor PR. It removes `ToPredicate` and `ToPolyTraitImpls` that hide the use of `Binder::dummy`. While this does make code a bit more verbose, it allows us be more careful about where we create binders. Another alternative here might be to add a new trait `ToBinder` or something with a `dummy()` fn. Which could still allow grepping but allows doing something like `trait_ref.dummy()` (but I also wonder if longer-term, it would be better to be even more explicit with a `bind_with_vars(ty::List::empty())` *but* that's not clear yet. r? ``@nikomatsakis``
2021-09-17Add another case of fallback to () avoid breakageMark Rousskov-0/+3
This adds src/test/ui/never_type/fallback-closure-ret.rs as a test case which showcases the failure mode fixed by this commit.
2021-09-15Remove ToPredicate impls that use Binder::dummyjackh726-1/+1
2021-08-14Assign FIXMEs to me and remove obsolete onesDeadbeef-1/+1
Also fixed capitalization of documentation
2021-08-13Pass constness to SelectionContextDeadbeef-0/+18
2020-08-30mv compiler to compiler/mark-0/+78