about summary refs log tree commit diff
path: root/compiler/rustc_trait_selection/src/solve
AgeCommit message (Collapse)AuthorLines
2023-01-27Introduce GeneratorWitnessMIR.Camille GILLOT-0/+9
2023-01-27Separate trait selection from ambiguity reporting.Camille GILLOT-6/+1
2023-01-27Auto merge of #107372 - JohnTitor:rollup-zkl2ges, r=JohnTitorbors-13/+11
Rollup of 9 pull requests Successful merges: - #106806 (Replace format flags u32 by enums and bools.) - #107194 (Remove dependency on slice_internals feature in rustc_ast) - #107234 (Revisit fix_is_ci_llvm_available logic) - #107316 (Update snap from `1.0.1` to `1.1.0`) - #107321 (solver comments + remove `TyCtxt::evaluate_goal`) - #107332 (Fix wording from `rustbuild` to `bootstrap`) - #107347 (reduce rightward-drift) - #107352 (compiler: Fix E0587 explanation) - #107357 (Fix infinite loop in rustdoc get_all_import_attributes function) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2023-01-27assert that solver results are stablelcnr-8/+46
2023-01-27small refactor to new projection codelcnr-37/+40
2023-01-26fixup new usages of fn_sig, bound_fn_sig after rebasingKyle Matsuda-1/+1
2023-01-26Make make_identity take CanonicalVarInfosMichael Goulet-21/+2
2023-01-26Intern CanonicalVarValuesMichael Goulet-22/+19
2023-01-26solver comments + remove `TyCtxt::evaluate_goal`lcnr-13/+11
2023-01-26Rollup merge of #107286 - compiler-errors:new-solver-deny-infers, r=lcnrMatthias Krüger-22/+33
ICE in new solver if we see an inference variable By construction, we do not expect to see any `ty::Infer(ty::TyVar(_))` inference types in the solver (we treat this as ambiguous, since we need to be able to structurally resolve the self type at least one layer to assemble candidates for it). Additionally, since we're doing no freshening, we also don't expect to see any fresh vars of any kind in the solver. Let's make that an ICE so we can catch any mistakes. When #107282 lands, we should also ICE there too if we see a non-int/float infer. r? `@lcnr`
2023-01-26Rollup merge of #107285 - compiler-errors:new-solver-future-and-generator, ↵Matthias Krüger-11/+184
r=lcnr Implement `Generator` and `Future` in the new solver r? `@lcnr`
2023-01-26Rollup merge of #107272 - compiler-errors:new-solver-more-predicates, r=lcnrMatthias Krüger-4/+33
Implement ObjectSafe and WF in the new solver r? ``@lcnr``
2023-01-26ICE in new solver if we see an inference variableMichael Goulet-22/+33
2023-01-26Implement Generator and FutureMichael Goulet-1/+127
2023-01-26Report the right fulfillment errorsMichael Goulet-10/+57
2023-01-25Don't normalize obligations in WF goal for the new solverMichael Goulet-5/+1
2023-01-25Implement ObjectSafe and WF in the new solverMichael Goulet-4/+37
2023-01-25Rollup merge of #107282 - BoxyUwU:erica_builtin_pointee_impls, r=compiler-errorsMatthias Krüger-0/+105
erica solver: implement builtin `Pointee` trait impl candidates r? ```@compiler-errors```
2023-01-24no without_constnessBoxy-2/+1
2023-01-24sorry ericaBoxy-1/+1
2023-01-24implement builtin candidateBoxy-0/+106
2023-01-23`new_outside_solver` -> `evaluate_root_goal`lcnr-17/+32
2023-01-23Rollup merge of #104926 - spastorino:calculate_diverging_fallback-cleanups, ↵Dylan DPC-6/+0
r=lcnr Move relationships from FulfillmentContext to Inherited r? `@lcnr`
2023-01-22Store relationships on InherentSantiago Pastorino-6/+0
2023-01-21Address goal nitsMichael Goulet-38/+54
2023-01-21Implement some more predicatesMichael Goulet-7/+57
2023-01-19trait solver: Implement Fn traits and tuple traitMichael Goulet-7/+142
2023-01-19trait solver: PointerSizedMichael Goulet-2/+39
2023-01-19swap Ambiguity and Unimplemented in new trait engineMichael Goulet-2/+4
2023-01-19Assert goal is fully normalized during assembleMichael Goulet-1/+4
2023-01-19HACK: self ty ambiguity hackMichael Goulet-1/+11
2023-01-19Fix IndexVec::drain_enumeratedMichael Goulet-10/+5
2023-01-18Rollup merge of #107030 - albertlarsan68:patch-3, r=lcnrMichael Goulet-1/+1
Correct typo https://github.com/rust-lang/rust/pull/106718#discussion_r1073508490
2023-01-18Handle structural traits more gracefullyMichael Goulet-215/+212
2023-01-18no subtyping in the new trait solverMichael Goulet-34/+23
2023-01-18Sized, Copy/CloneMichael Goulet-3/+151
2023-01-18Auto and alias traitsMichael Goulet-21/+164
2023-01-18Assemble object bound candidatesMichael Goulet-0/+52
2023-01-18implement consider_assumptionMichael Goulet-10/+70
2023-01-18Canonicalize trait solver response inside probeMichael Goulet-24/+25
2023-01-18Correct typoAlbert Larsan-1/+1
2023-01-18add commentlcnr-0/+1
2023-01-18add note about indirect cycleslcnr-0/+4
2023-01-18update project to emulate a projection cachelcnr-14/+124
2023-01-18add `eq` to `InferCtxtExt`lcnr-38/+49
2023-01-18remove assembly context and impl a bit morelcnr-163/+311
2023-01-18instantiate canonical vars eagerlylcnr-485/+509
2023-01-18update cachelcnr-112/+88
2023-01-17new trait solver: only consider goal changed if response is not identityMichael Goulet-1/+1
2023-01-16Rollup merge of #106835 - compiler-errors:new-solver-gat-rebase-oops, r=lcnrMatthias Krüger-1/+1
new trait solver: rebase impl substs for gats correctly you might've caught this while working on projection code, if so then you can close this pr r? `@lcnr`