| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2024-11-18 | review | lcnr | -3/+3 | |
| 2024-11-18 | use `TypingEnv` when no `infcx` is available | lcnr | -1/+45 | |
| the behavior of the type system not only depends on the current assumptions, but also the currentnphase of the compiler. This is mostly necessary as we need to decide whether and how to reveal opaque types. We track this via the `TypingMode`. | ||||
| 2024-11-12 | Consolidate type system const evaluation under `traits::evaluate_const` | Boxy | -135/+1 | |
| mew | ||||
| 2024-11-08 | Manually register some bounds for a better span | Michael Goulet | -0/+1 | |
| 2024-11-04 | ty::BrK -> ty::BoundRegionKind::K | Michael Goulet | -1/+1 | |
| 2024-11-02 | Remove or fix some FIXME(async_closure) | Michael Goulet | -1/+0 | |
| 2024-10-31 | Encode cross-crate opaque type origin | Michael Goulet | -1/+4 | |
| 2024-10-29 | TypingMode :thinking: | lcnr | -110/+108 | |
| 2024-10-28 | fix clippy::clone_on_ref_ptr for compiler | klensy | -1/+1 | |
| 2024-10-24 | Implement const effect predicate in new solver | Michael Goulet | -12/+2 | |
| 2024-10-24 | Remove associated type based effects logic | Michael Goulet | -159/+7 | |
| 2024-10-23 | clone range in a more obvious way | Matthias Krüger | -4/+1 | |
| 2024-10-19 | refactor fudge_inference, handle effect vars | lcnr | -124/+175 | |
| 2024-10-17 | move `defining_opaque_types` out of `Canonical` | lcnr | -21/+12 | |
| 2024-10-12 | Swap PredicateObligation to ThinVec | GnomedDev | -1/+2 | |
| 2024-10-12 | Swap Vec<PredicateObligation> to type alias | GnomedDev | -29/+34 | |
| 2024-10-10 | Make super combine into fns | Michael Goulet | -8/+8 | |
| 2024-10-10 | Use SolverRelating in favor of TypeRelating in the old solver where possible | Michael Goulet | -30/+73 | |
| 2024-10-10 | Remove unnecessary StructurallyRelateAliases from CombineFields/TypeRelating | Michael Goulet | -8/+2 | |
| 2024-10-10 | Use SolverRelating in new solver | Michael Goulet | -72/+2 | |
| 2024-10-10 | Introduce SolverRelating | Michael Goulet | -1/+34 | |
| 2024-10-10 | Uplift super_combine | Michael Goulet | -254/+70 | |
| 2024-10-10 | Move ty::Error branch into super_combine_tys | Michael Goulet | -5/+5 | |
| 2024-10-08 | Remove unnecessary `return` keyword. | Nicholas Nethercote | -1/+1 | |
| 2024-10-08 | Use `Default` more in `InferCtxtInner`. | Nicholas Nethercote | -18/+7 | |
| 2024-10-08 | Downgrade a `&mut self` to `&self`. | Nicholas Nethercote | -1/+1 | |
| 2024-10-08 | Remove `Deref`/`DerefMut` impls for `RegionConstraintCollector`. | Nicholas Nethercote | -32/+18 | |
| `Deref`/`DerefMut` can be useful, but they can also obfuscate. I don't think they're worth it for `RegionConstraintCollector`. They're also not present on the similar types `OpaqueTypeTable` and `TypeVariableTable`. | ||||
| 2024-10-08 | Remove unnecessary lifetime from `LeakCheck`. | Nicholas Nethercote | -32/+22 | |
| `LeakCheck` can own `mini_graph` and `rcc` instead of holding references to them. This requires inlining `assign_scc_value` to avoid a borrowck error, but that's fine because it has a single call site. | ||||
| 2024-10-08 | Inline and remove `RegionConstraintStorage::remove_constraint_entry`. | Nicholas Nethercote | -24/+20 | |
| It has a single call site. | ||||
| 2024-10-08 | Inline and remove `RegionConstraintCollector::into_infos_and_data`. | Nicholas Nethercote | -32/+18 | |
| It's a weird method, and used weirdly: - It's on `RegionConstraintCollector` but operates on `RegionConstraintStorage`. So at both call sites we create a temporary `RegionConstraintCollector`, using `with_log`, to call it. - It `take`s just two of the six fields in `RegionConstraintStorage`. At one of the two call sites we unnecessarily clone the entire `RegionConstraintStorage` just to take those two fields. This commit just inlines and removes it. We no longer need to `take` the two fields, we can just use them directly. | ||||
| 2024-10-08 | Improve formatting of some comments. | Nicholas Nethercote | -53/+50 | |
| I.e. fixing comments lines that are too long or too short. | ||||
| 2024-10-08 | Add a useful comment about `InferOk`. | Nicholas Nethercote | -0/+7 | |
| Prompted by #131134, which tried to remove `InferOk<'tcx, ()>` occurrences. | ||||
| 2024-10-08 | Remove `OutlivesEnvironmentBuilder`. | Nicholas Nethercote | -61/+26 | |
| `OutlivesEnvironment::new` can call `OutlivesEnvironment::with_bounds` with an empty `extra_bounds`. And once that's done, `OutlivesEnvironmentBuilder` has a single use and can be inlined and removed into `OutlivesEnvironment::with_bounds`. | ||||
| 2024-10-07 | Auto merge of #131343 - compiler-errors:remove-combine-fields, r=lcnr | bors | -262/+161 | |
| Remove `CombineFields` This conflicts with #131263, but if this one lands first then perhaps #131263 could then go ahead and remove all the branching on solver in `TypeRelating`. We could perhaps then rename `TypeRelating` to `OldSolverRelating` or something, idk. r? lcnr | ||||
| 2024-10-07 | Rollup merge of #131344 - nnethercote:ref-Lrc, r=compiler-errors | Matthias Krüger | -4/+12 | |
| Avoid `&Lrc<T>` in various places Seeing `&Lrc<T>` is a bit suspicious, and `&T` or `Lrc<T>` is often better. r? `@oli-obk` | ||||
| 2024-10-07 | Remove At methods that are unused | Michael Goulet | -41/+0 | |
| 2024-10-07 | Remove unnecessary DefineOpaqueTypes from lub | Michael Goulet | -25/+9 | |
| 2024-10-07 | Inline CombineFields | Michael Goulet | -218/+174 | |
| 2024-10-07 | Convert a `&Lrc<T>` argument to `Lrc<T>`. | Nicholas Nethercote | -4/+12 | |
| It's slightly simpler. | ||||
| 2024-10-07 | Remove out-of-date comment. | Nicholas Nethercote | -2/+0 | |
| 2024-10-07 | Move a `use` statement so it's with the other `use` statements. | Nicholas Nethercote | -2/+1 | |
| 2024-10-07 | Simplify two matches. | Nicholas Nethercote | -15/+1 | |
| Matches involving `GenericArgKind` pairs typically use a single `_` for the impossible case. This commit shortens two verbose matches in this way. | ||||
| 2024-10-07 | Streamline `next_*_var*` methods. | Nicholas Nethercote | -18/+6 | |
| Inline and remove `next_const_var_id`, `next_int_var_id`, `next_float_var_id`, all of which have a single call site. | ||||
| 2024-10-07 | Inline and remove `InferCtxtBuilder::with_defining_opaque_types`. | Nicholas Nethercote | -10/+3 | |
| It has a single use. | ||||
| 2024-10-07 | Fix `FIXME` comment on `FixupError`. | Nicholas Nethercote | -27/+24 | |
| `FixupError` is isomorphic with `TyOrConstInferVar`, so this commit changes it to just be a wrapper around `TyOrConstInferVar`. Also, move the `Display` impl for `FixupError` next to `FixupError`. | ||||
| 2024-10-07 | Remove `InferCtxt::err_count_on_creation`. | Nicholas Nethercote | -18/+3 | |
| It's no longer used meaningfully. This also means `DiagCtxtHandle::err_count_excluding_lint_errs` can be removed. | ||||
| 2024-10-07 | Reduce visibilities some more. | Nicholas Nethercote | -25/+26 | |
| It helps people reading the code understand how widely things are used. | ||||
| 2024-10-07 | Remove unused `UnitResult` type. | Nicholas Nethercote | -2/+0 | |
| 2024-10-07 | Reduce visibilities. | Nicholas Nethercote | -52/+25 | |
| Three of the modules don't need to be `pub`, and then `warn(unreachable_pub)` identifies a bunch more things that also shouldn't be `pub`, plus a couple of things that are unused. | ||||
| 2024-10-07 | Rename `errors/mod.rs` as `errors.rs`. | Nicholas Nethercote | -0/+0 | |
| It's simpler, for this tiny module. | ||||
