| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2023-03-21 | remove some trait solver helpers | lcnr | -27/+8 | |
| they add more complexity then they are worth. It's confusing which of these helpers should be used in which context. | ||||
| 2023-02-23 | Rollup merge of #108350 - compiler-errors:assoc-type-bound-dogfooding, r=oli-obk | Matthias Krüger | -2/+2 | |
| Use associated type bounds in some places in the compiler Use associated type bounds for some nested `impl Trait<Assoc = impl Trait2>` cases. I'm generally keen to introduce new lang features that are more mature into the compiler, but maybe let's see what others think? Side-note: I was surprised that the only use-cases of nested impl trait in the compiler are just iterator related?! | ||||
| 2023-02-22 | Remove type-traversal trait aliases | Alan Egerton | -6/+6 | |
| 2023-02-21 | Associated type bounds in some places in the compiler | Michael Goulet | -2/+2 | |
| 2023-02-13 | Alias folding/visiting traits instead of re-export | Alan Egerton | -1/+1 | |
| 2023-01-03 | Simplify some canonical type alias names | Michael Goulet | -3/+3 | |
| 2022-11-28 | partially_normalize_... -> At::normalize | Michael Goulet | -28/+0 | |
| 2022-11-21 | Stop passing the self-type as a separate argument. | Oli Scherer | -10/+6 | |
| 2022-11-21 | Remove a redundant assert | Oli Scherer | -6/+0 | |
| 2022-11-21 | Assert that various types have the right amount of generic args and fix the ↵ | Oli Scherer | -4/+1 | |
| sites that used the wrong amount | ||||
| 2022-11-21 | Check that type_implements_trait actually is passed the right amount of ↵ | Oli Scherer | -3/+11 | |
| generic params | ||||
| 2022-11-04 | Some tracing and comment cleanups | Oli Scherer | -10/+2 | |
| 2022-11-01 | Auto merge of #103590 - compiler-errors:ocx-more, r=lcnr | bors | -7/+7 | |
| (almost) Always use `ObligationCtxt` when dealing with canonical queries Hope this is a step in the right direction. cc rust-lang/types-team#50. r? `@lcnr` | ||||
| 2022-10-27 | (almost) Always use ObligationCtxt when dealing with canonical queries | Michael Goulet | -7/+7 | |
| 2022-10-27 | Accept `TyCtxt` instead of `TyCtxtAt` in `Ty::is_*` functions | Maybe Waffle | -1/+1 | |
| Functions in answer: - `Ty::is_freeze` - `Ty::is_sized` - `Ty::is_unpin` - `Ty::is_copy_modulo_regions` | ||||
| 2022-10-07 | Change InferCtxtBuilder from enter to build | Cameron Steffen | -13/+5 | |
| 2022-10-07 | Remove TypeckResults from InferCtxt | Cameron Steffen | -3/+3 | |
| 2022-09-05 | Point out when a callable is not actually callable because its return is not ↵ | Michael Goulet | -0/+17 | |
| sized | ||||
| 2022-07-06 | Update TypeVisitor paths | Alan Egerton | -1/+1 | |
| 2021-12-12 | Revert "Auto merge of #91491 - spastorino:revert-91354, r=oli-obk" | Deadbeef | -1/+0 | |
| This reverts commit ff2439b7b9bafcfdff86b7847128014699df8442, reversing changes made to 2a9e0831d6603d87220cedd1b1293e2eb82ef55c. | ||||
| 2021-12-03 | Revert "Auto merge of #91354 - fee1-dead:const_env, r=spastorino" | Santiago Pastorino | -0/+1 | |
| This reverts commit 18bb8c61a975fff6424cda831ace5b0404277145, reversing changes made to d9baa361902b172be716f96619b909f340802dea. | ||||
| 2021-11-29 | Completely remove ConstnessAnd | Oli Scherer | -1/+0 | |
| 2021-10-15 | Move some outlives bounds things from rustc_trait_selection to rustc_typeck | jackh726 | -49/+0 | |
| 2021-09-15 | Remove ToPredicate impls that use Binder::dummy | jackh726 | -1/+1 | |
| 2021-09-09 | Use FxHashSet instead of Vec for well formed tys | jackh726 | -3/+4 | |
| 2021-08-25 | trailing whitespace | Niko Matsakis | -1/+1 | |
| 2021-08-25 | update docs for `type_implements_trait` | Niko Matsakis | -0/+4 | |
| 2021-08-25 | type_implements_trait consider obligation failure on overflow | Aman Arora | -1/+1 | |
| 2021-07-16 | Add initial implementation of HIR-based WF checking for diagnostics | Aaron Hill | -5/+2 | |
| During well-formed checking, we walk through all types 'nested' in generic arguments. For example, WF-checking `Option<MyStruct<u8>>` will cause us to check `MyStruct<u8>` and `u8`. However, this is done on a `rustc_middle::ty::Ty`, which has no span information. As a result, any errors that occur will have a very general span (e.g. the definintion of an associated item). This becomes a problem when macros are involved. In general, an associated type like `type MyType = Option<MyStruct<u8>>;` may have completely different spans for each nested type in the HIR. Using the span of the entire associated item might end up pointing to a macro invocation, even though a user-provided span is available in one of the nested types. This PR adds a framework for HIR-based well formed checking. This check is only run during error reporting, and is used to obtain a more precise span for an existing error. This is accomplished by individually checking each 'nested' type in the HIR for the type, allowing us to find the most-specific type (and span) that produces a given error. The majority of the changes are to the error-reporting code. However, some of the general trait code is modified to pass through more information. Since this has no soundness implications, I've implemented a minimal version to begin with, which can be extended over time. In particular, this only works for HIR items with a corresponding `DefId` (e.g. it will not work for WF-checking performed within function bodies). | ||||
| 2021-07-06 | Make type_implements_trait not a query | Aman Arora | -1/+44 | |
| 2021-03-18 | Fix use of bare trait objects everywhere | Vadim Petrochenkov | -1/+1 | |
| 2020-12-29 | Remove `compile-fail` test suite | Vadim Petrochenkov | -1/+1 | |
| 2020-11-16 | compiler: fold by value | Bastian Kauschke | -4/+4 | |
| 2020-08-30 | mv compiler to compiler/ | mark | -0/+182 | |
