| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2023-11-03 | Auto merge of #117507 - nnethercote:rustc_span, r=Nilstrieb | bors | -1/+1 | |
| `rustc_span` cleanups Just some things I found while looking over this crate. r? `@oli-obk` | ||||
| 2023-11-02 | dropck_outlives check generator witness needs_drop | lcnr | -1/+2 | |
| 2023-11-02 | Minimize `pub` usage in `source_map.rs`. | Nicholas Nethercote | -1/+1 | |
| Most notably, this commit changes the `pub use crate::*;` in that file to `use crate::*;`. This requires a lot of `use` items in other crates to be adjusted, because everything defined within `rustc_span::*` was also available via `rustc_span::source_map::*`, which is bizarre. The commit also removes `SourceMap::span_to_relative_line_string`, which is unused. | ||||
| 2023-09-13 | Detect cycle errors hidden by opaques during monomorphization | Michael Goulet | -1/+25 | |
| 2023-07-14 | refactor(rustc_middle): Substs -> GenericArg | Mahdi Dibaiee | -7/+7 | |
| 2023-07-06 | get rid of a bit more calls to poly_select | Michael Goulet | -2/+2 | |
| 2023-07-06 | Separate select calls that don't need a binder | Michael Goulet | -1/+1 | |
| 2023-07-03 | remove TypeWellFormedFromEnv | Michael Goulet | -2/+1 | |
| 2023-07-03 | Remove chalk from the compiler | Michael Goulet | -2203/+1 | |
| 2023-07-01 | Update chalk | Nilstrieb | -0/+2 | |
| 2023-06-27 | Remove unnecessary DefineOpaqueTypes::Bubble from codegen | Michael Goulet | -13/+2 | |
| 2023-06-26 | TypeWellFormedInEnv | Michael Goulet | -9/+10 | |
| 2023-06-26 | Migrate predicates_of and caller_bounds to Clause | Michael Goulet | -44/+31 | |
| 2023-06-23 | Rollup merge of #112963 - oli-obk:tait_solver_decoupling, r=compiler-errors | Michael Goulet | -17/+6 | |
| Stop bubbling out hidden types from the eval obligation queries r? `@compiler-errors` I don't know why these were added, but they are not needed anymore. The relevant test is unaffected and I didn't see anything interesting in logging that would have justified it. This PR has no effect on the new solver behaviour of https://github.com/rust-lang/rust/blob/cf2dff2b1e3fa55fa5415d524200070d0d7aacfe/tests/ui/impl-trait/issue-99642.rs (which is overflow) and https://github.com/rust-lang/rust/blob/cf2dff2b1e3fa55fa5415d524200070d0d7aacfe/tests/ui/impl-trait/issue-99642-2.rs (which is "unstable certainty ICE") | ||||
| 2023-06-23 | Stop bubbling out hidden types from the eval obligation queries | Oli Scherer | -17/+6 | |
| 2023-06-22 | Migrate item_bounds to ty::Clause | Michael Goulet | -2/+4 | |
| 2023-06-19 | s/Clause/ClauseKind | Michael Goulet | -35/+35 | |
| 2023-06-17 | Move ConstEvaluatable to Clause | Michael Goulet | -5/+5 | |
| 2023-06-17 | Move WF goal to clause | Michael Goulet | -5/+5 | |
| 2023-06-16 | Add `AliasKind::Weak` for type aliases. | Oli Scherer | -1/+34 | |
| Only use it when the type alias contains an opaque type. Also does wf-checking on such type aliases. | ||||
| 2023-06-14 | s/drain_filter/extract_if/ for Vec, Btree{Map,Set} and LinkedList | The 8472 | -1/+0 | |
| 2023-06-06 | Make TraitEngine::new use the right solver, add compare mode | Michael Goulet | -1/+1 | |
| 2023-06-06 | New trait solver is a property of inference context | Michael Goulet | -1/+1 | |
| 2023-05-29 | Rename `tcx.mk_re_*` => `Region::new_*` | Maybe Waffle | -11/+15 | |
| 2023-05-28 | Make EarlyBinder's inner value private; and fix all of the resulting errors | Kyle Matsuda | -1/+1 | |
| 2023-05-27 | Uplift complex type ops back into typeck so we can call them locally | Michael Goulet | -540/+15 | |
| 2023-05-25 | Fallible<_> -> Result<_, NoSolution> | Michael Goulet | -4/+4 | |
| 2023-05-25 | Prepopulate opaques in canonical input | Michael Goulet | -0/+1 | |
| 2023-05-25 | Move DefiningAnchor | Michael Goulet | -5/+6 | |
| 2023-05-25 | Pull out logic from #111131, plus some new logic in ↵ | Michael Goulet | -1/+1 | |
| EvalCtxt::normalize_opaque_type Co-authored-by: lcnr <rust@lcnr.de> | ||||
| 2023-05-15 | Move expansion of query macros in rustc_middle to rustc_middle::query | John Kåre Alsaker | -8/+8 | |
| 2023-05-04 | IAT: Introduce AliasKind::Inherent | León Orell Valerian Liehr | -1/+29 | |
| 2023-05-03 | Restrict `From<S>` for `{D,Subd}iagnosticMessage`. | Nicholas Nethercote | -2/+2 | |
| Currently a `{D,Subd}iagnosticMessage` can be created from any type that impls `Into<String>`. That includes `&str`, `String`, and `Cow<'static, str>`, which are reasonable. It also includes `&String`, which is pretty weird, and results in many places making unnecessary allocations for patterns like this: ``` self.fatal(&format!(...)) ``` This creates a string with `format!`, takes a reference, passes the reference to `fatal`, which does an `into()`, which clones the reference, doing a second allocation. Two allocations for a single string, bleh. This commit changes the `From` impls so that you can only create a `{D,Subd}iagnosticMessage` from `&str`, `String`, or `Cow<'static, str>`. This requires changing all the places that currently create one from a `&String`. Most of these are of the `&format!(...)` form described above; each one removes an unnecessary static `&`, plus an allocation when executed. There are also a few places where the existing use of `&String` was more reasonable; these now just use `clone()` at the call site. As well as making the code nicer and more efficient, this is a step towards possibly using `Cow<'static, str>` in `{D,Subd}iagnosticMessage::{Str,Eager}`. That would require changing the `From<&'a str>` impls to `From<&'static str>`, which is doable, but I'm not yet sure if it's worthwhile. | ||||
| 2023-04-27 | rename `needs_infer` to `has_infer` | Boxy | -1/+1 | |
| 2023-04-21 | Changes from review | Kyle Matsuda | -11/+6 | |
| 2023-04-20 | add EarlyBinder to output of explicit_item_bounds; replace ↵ | Kyle Matsuda | -2/+2 | |
| bound_explicit_item_bounds usages; remove bound_explicit_item_bounds query | ||||
| 2023-04-18 | Don't transmute `&List<GenericArg>` <-> `&List<Ty>` | Maybe Waffle | -4/+16 | |
| 2023-04-16 | Rollup merge of #110345 - nnethercote:rm-Super-impls-for-Region, ↵ | fee1-dead | -4/+4 | |
| r=compiler-errors Remove `TypeSuper{Foldable,Visitable}` impls for `Region`. These traits exist so that folders/visitors can recurse into types of interest: binders, types, regions, predicates, and consts. But `Region` is non-recursive and cannot contain other types of interest, so its methods in these traits are trivial. This commit inlines and removes those trivial methods. r? `@compiler-errors` | ||||
| 2023-04-16 | Rollup merge of #109665 - fee1-dead-contrib:rm-remap-queries, r=oli-obk | fee1-dead | -0/+1 | |
| Remove `remap_env_constness` in queries This removes some of the complexities with const traits. #88119 used to be caused by this but was fixed by `param_env = param_env.without_const()`. | ||||
| 2023-04-16 | Remove `TypeSuper{Foldable,Visitable}` impls for `Region`. | Nicholas Nethercote | -4/+4 | |
| These traits exist so that folders/visitors can recurse into types of interest: binders, types, regions, predicates, and consts. But `Region` is non-recursive and cannot contain other types of interest, so its methods in these traits are trivial. This commit inlines and removes those trivial methods. | ||||
| 2023-04-14 | explicit adt_dtorck_constraint for ManuallyDrop | lcnr | -1/+3 | |
| 2023-04-08 | fix ICE | Deadbeef | -0/+1 | |
| 2023-04-06 | Remove u32 on BoundTyKind::Anon | Jack Huey | -5/+5 | |
| 2023-04-06 | Remove index from BrAnon | Jack Huey | -10/+11 | |
| 2023-04-06 | Remove expect_anon and expect_anon_placeholder in favor of var | Jack Huey | -9/+7 | |
| 2023-04-06 | Use BoundTy and BoundRegion instead of kind of PlaceholderTy and ↵ | Jack Huey | -13/+26 | |
| PlaceholderRegion | ||||
| 2023-04-01 | fix clippy::iter_kv_map | Matthias Krüger | -2/+1 | |
| 2023-03-23 | Rename AliasEq -> AliasRelate | Michael Goulet | -7/+7 | |
| 2023-02-24 | Add `mk_canonical_var_infos_from_iter`. | Nicholas Nethercote | -20/+17 | |
| It's missing, and is useful in two places. | ||||
| 2023-02-24 | Rename `mk_{ty,region}` as `mk_{ty,region}_from_kind`. | Nicholas Nethercote | -1/+1 | |
| To discourage accidental use -- there are more specific `mk_*` functions for all `Ty` and `Region` kinds. | ||||
