| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2023-01-11 | Move /src/test to /tests | Albert Larsan | -3040/+0 | |
| 2022-12-28 | Allow trait method paths to satisfy const Fn bounds | Deadbeef | -0/+61 | |
| 2022-12-15 | fix tidy and add rpitit test | Deadbeef | -2/+23 | |
| 2022-12-15 | Allow `impl ~const Trait` opaque types | Deadbeef | -51/+36 | |
| 2022-12-11 | Point at method call when it is the source of the bound error | Esteban Küber | -24/+12 | |
| 2022-12-04 | Add regression test for #79450 | Yuki Okushi | -0/+32 | |
| Signed-off-by: Yuki Okushi <jtitor@2k36.org> | ||||
| 2022-11-14 | Rollup merge of #104229 - compiler-errors:overlap-full-path, r=davidtwco | Matthias Krüger | -1/+1 | |
| Don't print full paths in overlap errors We don't print the full path in other diagnostics -- I don't think it particularly helps with the error message. I also delayed the printing until actually needing to render the error message. r? diagnostics | ||||
| 2022-11-12 | Rollup merge of #102049 - fee1-dead-contrib:derive_const, r=oli-obk | Dylan DPC | -0/+61 | |
| Add the `#[derive_const]` attribute Closes #102371. This is a minimal patchset for the attribute to work. There are no restrictions on what traits this attribute applies to. r? `````@oli-obk````` | ||||
| 2022-11-10 | Oops, bless this test. | Ben Reeves | -1/+1 | |
| 2022-11-10 | Apply PR feedback. | Ben Reeves | -1/+1 | |
| 2022-11-10 | Require `~const` qualifier on trait bounds in specializing impls if present ↵ | Ben Reeves | -8/+94 | |
| in base impl. | ||||
| 2022-11-10 | Add #[const_trait] where needed in tests. | Ben Reeves | -1/+10 | |
| 2022-11-10 | Disallow specializing on const impls with non-const impls. | Ben Reeves | -76/+20 | |
| 2022-11-10 | Allow specialized const trait impls. | Ben Reeves | -0/+242 | |
| Fixes #95186. Fixes #95187. | ||||
| 2022-11-10 | Don't print full paths in overlap errors | Michael Goulet | -1/+1 | |
| 2022-10-28 | Retain ParamEnv constness when running deferred cast checks | Deadbeef | -0/+5 | |
| Fixes #103677. | ||||
| 2022-10-27 | Rollup merge of #103525 - oli-obk:const_impl_on_non_const_trait, r=lcnr | Matthias Krüger | -12/+12 | |
| Move a wf-check into the site where the value is instantiated r? ``@lcnr`` | ||||
| 2022-10-26 | Auto merge of #103284 - compiler-errors:const-sad, r=oli-obk | bors | -3/+19 | |
| Revert "Unify tcx.constness and param env constness checks" Too much of a perf regression https://github.com/rust-lang/rust/pull/102975#issuecomment-1282702513, and an attempt in #103263 didn't fix it except for just a tiny bit. This change isn't really needed (see https://github.com/rust-lang/rust/pull/102830#issuecomment-1272514096), so this should be an easy revert. | ||||
| 2022-10-25 | Move a wf-check into the site where the value is instantiated | Oli Scherer | -12/+12 | |
| 2022-10-23 | Rollup merge of #103328 - compiler-errors:trivial-false-const-sugg, r=jackh726 | Matthias Krüger | -33/+0 | |
| Do not suggest trivially false const predicates Pass through constness to `predicate_can_apply` and don't suggest other impls if it's satisfied but not const. Fixes #103267 | ||||
| 2022-10-21 | Require Drop impls to have the same constness on its bounds as the bounds on ↵ | Oli Scherer | -46/+115 | |
| the struct have | ||||
| 2022-10-20 | Do not suggest trivially false const predicates | Michael Goulet | -33/+0 | |
| 2022-10-20 | Improve "`~const` is not allowed here" message | Deadbeef | -5/+42 | |
| 2022-10-20 | Bless test | Michael Goulet | -3/+19 | |
| 2022-10-13 | Delay intrinsic call until after we've determined the callee is a function | Michael Goulet | -0/+37 | |
| 2022-10-04 | Merge the `~const` and `impl const` checks and add some explanatory notes | Oli Scherer | -17/+10 | |
| 2022-10-04 | Only allow ~const bounds for traits with #[const_trait] | Oli Scherer | -75/+178 | |
| 2022-09-27 | Fix ICE in const_trait check code | Deadbeef | -0/+34 | |
| This fixes #102156. | ||||
| 2022-09-27 | rustc_typeck to rustc_hir_analysis | lcnr | -1/+1 | |
| 2022-09-26 | Rollup merge of #102273 - woppopo:relax_const_bound, r=fee1-dead | Matthias Krüger | -28/+40 | |
| Allow `~const` bounds on non-const functions Makes the behavior of bound of trait-associated functions and non-associated functions consistent. | ||||
| 2022-09-26 | Allow `~const` bounds on non-const functions | woppopo | -28/+40 | |
| 2022-09-24 | added tests | Deadbeef | -0/+84 | |
| 2022-09-22 | Auto merge of #100982 - fee1-dead-contrib:const-impl-requires-const-trait, ↵ | bors | -91/+188 | |
| r=oli-obk Require `#[const_trait]` on `Trait` for `impl const Trait` r? `@oli-obk` | ||||
| 2022-09-21 | Make error messages great again (and fix clippy and add test) | Deadbeef | -0/+12 | |
| 2022-09-20 | Add the `#[derive_const]` attribute | Deadbeef | -0/+61 | |
| 2022-09-18 | make projection bounds with const bounds satisfy const | Deadbeef | -0/+14 | |
| 2022-09-16 | do const trait method bounds check later in rustc_const_eval | Deadbeef | -63/+89 | |
| 2022-09-16 | bless tests | Deadbeef | -28/+64 | |
| 2022-09-16 | Add test | Deadbeef | -0/+23 | |
| 2022-08-22 | Rollup merge of #100336 - fee1-dead-contrib:fix-wf-const-trait, r=oli-obk | Dylan DPC | -0/+29 | |
| Fix two const_trait_impl issues r? ``@oli-obk`` Fixes #100222. Fixes #100543. | ||||
| 2022-08-22 | fix tidy | Deadbeef | -1/+3 | |
| 2022-08-22 | Overhaul 100222 test; wf always remap to nonconst | Deadbeef | -4/+17 | |
| 2022-08-22 | Fix wf check on `#[const_trait]` return types | Deadbeef | -0/+14 | |
| 2022-08-22 | Rollup merge of #99915 - WaffleLapkin:recover_keyword_bounds, r=compiler-errors | Dylan DPC | -3/+5 | |
| Recover keywords in trait bounds (_this pr was inspired by [this tweet](https://twitter.com/Azumanga/status/1552982326409367561)_) Recover keywords in trait bound, motivational example: ```rust fn f(_: impl fn()) {} // mistyped, meant `Fn` ``` <details><summary>Current nightly (3 needless and confusing errors!)</summary> <p> ```text error: expected identifier, found keyword `fn` --> ./t.rs:1:15 | 1 | fn _f(_: impl fn()) {} | ^^ expected identifier, found keyword | help: escape `fn` to use it as an identifier | 1 | fn _f(_: impl r#fn()) {} | ++ error: expected one of `:` or `|`, found `)` --> ./t.rs:1:19 | 1 | fn _f(_: impl fn()) {} | ^ expected one of `:` or `|` error: expected one of `!`, `(`, `)`, `,`, `?`, `for`, `~`, lifetime, or path, found keyword `fn` --> ./t.rs:1:15 | 1 | fn _f(_: impl fn()) {} | -^^ expected one of 9 possible tokens | | | help: missing `,` error: at least one trait must be specified --> ./t.rs:1:10 | 1 | fn _f(_: impl fn()) {} | ^^^^ ``` </p> </details> This PR: ```text error: expected identifier, found keyword `fn` --> ./t.rs:1:15 | 1 | fn _f(_: impl fn()) {} | ^^ expected identifier, found keyword | help: escape `fn` to use it as an identifier | 1 | fn _f(_: impl r#fn()) {} | ++ error[E0405]: cannot find trait `r#fn` in this scope --> ./t.rs:1:15 | 1 | fn _f(_: impl fn()) {} | ^^ help: a trait with a similar name exists (notice the capitalization): `Fn` | ::: /home/waffle/projects/repos/rust/library/core/src/ops/function.rs:74:1 | 74 | pub trait Fn<Args>: FnMut<Args> { | ------------------------------- similarly named trait `Fn` defined here ``` It would be nice to have suggestion in the first error like "have you meant `Fn` trait", instead of a separate error, but the recovery is deep inside ident parsing, which makes it a lot harder to do. r? `@compiler-errors` | ||||
| 2022-08-21 | recover `const Tr` bounds (no `~`) | Maybe Waffle | -11/+6 | |
| 2022-08-21 | Adjust messages, address some nits | Michael Goulet | -4/+4 | |
| 2022-08-21 | Account for relative paths | Michael Goulet | -6/+6 | |
| 2022-08-21 | Rework point-at-arg | Michael Goulet | -16/+24 | |
| 2022-08-18 | Reword "Required because of the requirements on the impl of ..." | Andy Wang | -4/+4 | |
| 2022-08-03 | Warn about dead tuple struct fields | Fabian Wolff | -1/+1 | |
