| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2024-03-09 | Remove `Ord` from `ClosureKind` | Deadbeef | -17/+20 | |
| Using `Ord` to accomplish a meaning of subset relationship can be hard to read. The existing uses for that are easily replaced with a `match`, and in my opinion, more readable without needing to resorting to comments to explain the intention. | ||||
| 2024-03-04 | make `intrinsic` query legal for any `DefId` | Oli Scherer | -3/+1 | |
| 2024-02-20 | Fix stray trait mismatch in resolve_associated_item for AsyncFn | Michael Goulet | -15/+3 | |
| 2024-02-12 | Make `is_intrinsic` query return the intrinsic name | Oli Scherer | -1/+2 | |
| 2024-02-11 | Auto merge of #120619 - compiler-errors:param, r=lcnr | bors | -3/+1 | |
| Assert that params with the same *index* have the same *name* Found this bug when trying to build libcore with the new solver, since it will canonicalize two params with the same index into *different* placeholders if those params differ by name. | ||||
| 2024-02-07 | Stop using is_copy_modulo_regions when building clone shim | Michael Goulet | -3/+1 | |
| 2024-02-06 | Coroutine closures implement regular Fn traits, when possible | Michael Goulet | -0/+18 | |
| 2024-02-06 | Regular closures now built-in impls for AsyncFn* | Michael Goulet | -0/+13 | |
| 2024-02-06 | More comments, final tweaks | Michael Goulet | -0/+7 | |
| 2024-02-06 | Build a shim to call async closures with different AsyncFn trait kinds | Michael Goulet | -3/+14 | |
| 2024-02-06 | Teach typeck/borrowck/solvers how to deal with async closures | Michael Goulet | -0/+11 | |
| 2024-02-06 | Add CoroutineClosure to TyKind, AggregateKind, UpvarArgs | Michael Goulet | -0/+1 | |
| 2024-01-23 | Rollup merge of #120139 - compiler-errors:fnonce-shim, r=BoxyUwU | León Orell Valerian Liehr | -1/+6 | |
| Do not normalize closure signature when building `FnOnce` shim It is not necessary to normalize the closure signature when building an `FnOnce` shim for an `Fn`/`FnMut` closure. That closure shim is just calling `FnMut::call_mut(&mut self)` anyways. It's also somewhat sketchy that we were ever doing this to begin with, since we're normalizing with a `ParamEnv::reveal_all()` param-env, which is definitely not right with possibly polymorphic substs. This cuts out a tiny bit of unnecessary work in `Instance::resolve` and simplifies the signature because now we can unconditionally return an `Instance`. | ||||
| 2024-01-22 | Do not normalize closure signature when building FnOnce shim | Michael Goulet | -1/+6 | |
| 2024-01-19 | Consolidate logic around resolving built-in coroutine trait impls | Michael Goulet | -58/+1 | |
| 2023-12-28 | Remove movability from TyKind::Coroutine | Michael Goulet | -4/+4 | |
| 2023-12-24 | Remove `Session` methods that duplicate `DiagCtxt` methods. | Nicholas Nethercote | -3/+3 | |
| Also add some `dcx` methods to types that wrap `TyCtxt`, for easier access. | ||||
| 2023-12-08 | Implement `async gen` blocks | Michael Goulet | -0/+15 | |
| 2023-12-02 | Rename `HandlerInner::delay_span_bug` as `HandlerInner::span_delayed_bug`. | Nicholas Nethercote | -2/+2 | |
| Because the corresponding `Level` is `DelayedBug` and `span_delayed_bug` follows the pattern used everywhere else: `span_err`, `span_warning`, etc. | ||||
| 2023-11-21 | Rollup merge of #118115 - spastorino:fix-old-fn-names, r=compiler-errors | Nilstrieb | -1/+1 | |
| Fix occurrences of old fn names in comment and tracing | ||||
| 2023-11-20 | Fix occurrences of old fn names in comment and tracing | Santiago Pastorino | -1/+1 | |
| 2023-11-20 | Reduce exposure of some items. | Nicholas Nethercote | -1/+1 | |
| 2023-10-30 | Some more coroutine renamings | Michael Goulet | -1/+1 | |
| 2023-10-27 | Basic generators work | Oli Scherer | -0/+13 | |
| 2023-10-20 | s/generator/coroutine/ | Oli Scherer | -6/+6 | |
| 2023-10-20 | s/Generator/Coroutine/ | Oli Scherer | -6/+6 | |
| 2023-10-13 | Format all the let chains in compiler | Michael Goulet | -4/+1 | |
| 2023-09-19 | Don't resolve generic instances if they may be shadowed by dyn | Michael Goulet | -1/+24 | |
| 2023-09-14 | treat host effect params as erased generics in codegen | Deadbeef | -0/+1 | |
| This fixes the changes brought to codegen tests when effect params are added to libcore, by not attempting to monomorphize functions that get the host param by being `const fn`. | ||||
| 2023-08-09 | Don't use type_of to determine if item has intrinsic shim | Michael Goulet | -35/+30 | |
| 2023-07-25 | Make everything builtin! | Michael Goulet | -8/+11 | |
| 2023-07-25 | Restore tuple unsizing feature gate | Michael Goulet | -1/+3 | |
| 2023-07-14 | refactor(rustc_middle): Substs -> GenericArg | Mahdi Dibaiee | -40/+35 | |
| 2023-07-12 | Re-format let-else per rustfmt update | Mark Rousskov | -2/+4 | |
| 2023-07-06 | get rid of a bit more calls to poly_select | Michael Goulet | -1/+1 | |
| 2023-06-20 | yeet ImplSource::TraitAlias too | Michael Goulet | -3/+1 | |
| 2023-06-17 | Remove even more redundant builtin candidates | Michael Goulet | -77/+60 | |
| 2023-06-17 | Simplify even more candidates | Michael Goulet | -21/+19 | |
| 2023-06-17 | Simplify some impl source candidates | Michael Goulet | -4/+2 | |
| 2023-06-01 | Rename `impl_defaultness` to `defaultness` | Deadbeef | -1/+1 | |
| 2023-05-15 | Move expansion of query macros in rustc_middle to rustc_middle::query | John Kåre Alsaker | -2/+3 | |
| 2023-05-08 | Fix miscompilation when adding default method to `Future` | Jonas Schievink | -14/+11 | |
| 2023-05-06 | make (try_)subst_and_normalize_erasing_regions take EarlyBinder | Kyle Matsuda | -2/+1 | |
| 2023-05-06 | More robust debug assertions for `Instance::resolve` on built-in traits with ↵ | Michael Goulet | -13/+71 | |
| custom items | ||||
| 2023-05-03 | Restrict `From<S>` for `{D,Subd}iagnosticMessage`. | Nicholas Nethercote | -1/+1 | |
| 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 | -2/+2 | |
| 2023-04-20 | Remove WithOptconstParam. | Camille GILLOT | -35/+8 | |
| 2023-04-20 | Feed type_of query instead of using WithOptconstParam. | Camille GILLOT | -6/+0 | |
| 2023-04-16 | fix clippy::toplevel_ref_arg and ::manual_map | Matthias Krüger | -7/+4 | |
| 2023-04-07 | Move `FnPtrAddr` error to `SessionDiagnostic` | Matthew Jasper | -4/+5 | |
