about summary refs log tree commit diff
path: root/compiler/rustc_builtin_macros/src/deriving/from.rs
AgeCommit message (Collapse)AuthorLines
2025-08-19Avoid using `()` in `derive(From)` output.Nicholas Nethercote-35/+36
Using an error type instead of `()` avoids the duplicated errors on `struct SUnsizedField` in `deriving-from-wrong-target.rs`. It also improves the expanded output from this: ``` struct S2(u32, u32); impl ::core::convert::From<()> for S2 { #[inline] fn from(value: ()) -> S2 { (/*ERROR*/) } } ``` to this: ``` struct S2(u32, u32); impl ::core::convert::From<(/*ERROR*/)> for S2 { #[inline] fn from(value: (/*ERROR*/)) -> S2 { (/*ERROR*/) } } ``` The new code also only matchs on `item.kind` once.
2025-08-15Implement `#[derive(From)]`Jakub Beránek-3/+122
2025-08-15Create unstable `From` builtin macro and register itJakub Beránek-0/+13