rfcs
rfcs copied to clipboard
RFCs for changes to Rust
Currently we can use ```rs fn foo(v: Option) { let Some(v) = v else { // do sth then term the call }; } ``` to quickly extract the only...
[Original RFC](https://github.com/Noratrieb/rfcs/blob/ununsize_locals/text/1909-unsized-rvalues.md) [New RFC](https://github.com/Noratrieb/rfcs/blob/ununsize_locals/text/3829-de-rfc-unsized-locals.md) [Rendered](https://github.com/Noratrieb/rfcs/blob/ununsize_locals/text/3829-de-rfc-unsized-locals.md)
Port C `alignas` to Rust. [Rendered](https://github.com/Jules-Bertholet/rfcs/blob/align-attr/text/3806-align-attr.md)
Proposal to add dedented string literals to Rust of the form: `d"string"`. With the following: ```rs let sql = d" create table student( id int primary key, name text )...
Previously discussed as Pre-RFC on [IRLO](https://internals.rust-lang.org/t/pre-rfc-derive-from-for-newtypes/22567). [Rendered](https://github.com/Kobzol/rfcs/blob/derive-from/text/3809-derive-from.md)
[Rendered](https://github.com/jyn514/rfcs/blob/crate-attr/text/3791-crate-attr.md) cc https://github.com/rust-lang/rust/issues/138287 Differences from the current nightly implementation (note that this section is non-normative): - `-A -W -D -F` become aliases for `crate-attr` - Attributes are prepended, not appended....
[Rendered](https://github.com/dpaoliello/rfcs/blob/aarch64tier1/text/3817-promote-aarch64-pc-windows-msvc-to-tier-1.md)
All of Rust's types are either *sized*, which implement the `Sized` trait and have a statically known size during compilation, or *unsized*, which do not implement the `Sized` trait and...
This RFC proposes to add `#[export_visibility = …]` attribute, which seems like a reasonable way to address the following issues: * https://github.com/rust-lang/rust/issues/98449 * https://github.com/rust-lang/rust/issues/73958 This RFC complements the `-Zdefault-visibility=...` command-line...
The `std::num::NonZero` type allows non-zero integer semantics to be clearly expressed. Yet this type is only seamlessly usable if all APIs with non-zero semantics use this type, due to required...