about summary refs log tree commit diff
path: root/compiler/rustc_traits/src/implied_outlives_bounds.rs
AgeCommit message (Collapse)AuthorLines
2025-07-31Remove `ParamEnvAnd::into_parts`.Nicholas Nethercote-2/+2
The fields are public, so this doesn't need a method, normal deconstruction and/or field access is good enough.
2025-03-04Only use implied bounds hack if bevy, and use deeply normalize in implied ↵Michael Goulet-19/+9
bounds hack
2025-01-25Pass spans to perform_locally_in_new_solverMichael Goulet-2/+3
2024-10-17`ImpliedOutlivesBounds` to `rustc_middle`lcnr-5/+6
2024-09-22Reformat using the new identifier sorting from rustfmtMichael Goulet-1/+1
2024-01-17Correctly handle normalization in implied boundsAli MJ Al-Nasrawy-1/+17
Special-case Bevy dependents to not error
2023-05-27Uplift complex type ops back into typeck so we can call them locallyMichael Goulet-166/+3
2023-05-25Fallible<_> -> Result<_, NoSolution>Michael Goulet-2/+2
2023-05-15Move expansion of query macros in rustc_middle to rustc_middle::queryJohn Kåre Alsaker-1/+1
2023-03-23Rename AliasEq -> AliasRelateMichael Goulet-2/+2
2023-02-22Remove type-traversal trait aliasesAlan Egerton-1/+1
2023-02-17Add `Clause::ConstArgHasType` variantBoxy-0/+3
2023-02-10add `AliasEq` to `PredicateKind`Boxy-1/+3
2023-02-09Update implied_outlives_bounds to properly register implied bounds behind ↵Jack Huey-36/+49
normalization
2023-02-09Cleanup free_region_relations a bitJack Huey-0/+1
2023-01-23fix: use LocalDefId instead of HirId in trait resVincenzo Palazzo-4/+3
use LocalDefId instead of HirId in trait resolution to simplify the obligation clause resolution Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2023-01-19even more unify Projection/Opaque in outlives codeAli MJ Al-Nasrawy-4/+2
2023-01-13Unify Opaque/Projection handling in region outlives codeMichael Goulet-3/+2
2022-11-25Introduce PredicateKind::ClauseSantiago Pastorino-8/+9
2022-11-23Pass ObligationCtxt from enter_canonical_trait_query and use ObligationCtxt APISantiago Pastorino-16/+13
2022-11-21Add an always-ambiguous predicate to make sure that we don't accidentlally ↵Oli Scherer-0/+1
allow trait resolution to prove false things during coherence
2022-10-27(almost) Always use ObligationCtxt when dealing with canonical queriesMichael Goulet-2/+2
2022-10-07Remove TypeckResults from InferCtxtCameron Steffen-1/+1
2022-10-04It's not about types or consts, but the lack of regionsOli Scherer-1/+1
2022-09-25Auto merge of #95474 - oli-obk:tait_ub, r=jackh726bors-0/+3
Neither require nor imply lifetime bounds on opaque type for well formedness The actual hidden type can live arbitrarily longer than any individual lifetime and arbitrarily shorter than all but one of the lifetimes. fixes #86218 fixes #84305 This is a **breaking change** but it is a necessary soundness fix
2022-09-21Neither require nor imply lifetime bounds on opaque type for well formednessOli Scherer-0/+3
2022-09-19improve infer var handling for implied boundslcnr-33/+36
2022-07-26Use TraitEngine in more places that don't specifically need ↵Michael Goulet-3/+2
FulfillmentCtxt::new_in_snapshot
2022-07-20Remove unused StableMap and StableSet types from rustc_data_structuresMichael Woerister-1/+1
2022-07-06Update TypeVisitor pathsAlan Egerton-1/+1
2022-06-28Make empty bounds lower to WellFormed and make WellFormed coinductiveJack Huey-3/+8
2022-05-20Remove `crate` visibility usage in compilerJacob Pratt-1/+1
2022-02-11Revert "Auto merge of #92007 - oli-obk:lazy_tait2, r=nikomatsakis"Oli Scherer-1/+0
This reverts commit e7cc3bddbe0d0e374d05e7003e662bba1742dbae, reversing changes made to 734368a200904ef9c21db86c595dc04263c87be0.
2022-02-02Lazily resolve type-alias-impl-trait defining usesOli Scherer-0/+1
by using an opaque type obligation to bubble up comparisons between opaque types and other types Also uses proper obligation causes so that the body id works, because out of some reason nll uses body ids for logic instead of just diagnostics.
2021-12-30Removed `in_band_lifetimes` from `rustc_traits`Anuvrat-1/+1
2021-11-08Make select_* methods return Vec for TraitEngineDeadbeef-3/+3
2021-10-15Move some outlives bounds things from rustc_trait_selection to rustc_typeckjackh726-1/+1
2021-10-15Move push_outlives_components to rustc_inferjackh726-2/+2
2021-08-19introduce a Coerce predicateNiko Matsakis-0/+1
2021-01-16Review changesJack Huey-12/+12
2021-01-16Use no_bound_varsJack Huey-6/+4
2021-01-16CleanupJack Huey-1/+1
2021-01-16Remove PredicateKindJack Huey-1/+1
2021-01-16Intermediate formatting and suchJack Huey-8/+6
2021-01-16Remove PredicateKind::AtomJack Huey-2/+6
2020-11-16compiler: fold by valueBastian Kauschke-1/+1
2020-10-30Fix some more clippy warningsJoshua Nelson-1/+1
2020-10-06Fix bugs in evaluating WellFormed predicatesMatthew Jasper-2/+2
- List the nestsed obligations in an order that works with the single pass used by evaluation - Propagate recursion depth correctly
2020-09-09Remove def_id field from ParamEnvBram van den Heuvel-1/+2
2020-08-30mv compiler to compiler/mark-0/+166