Rust Compiler Team
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Write
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights New
    • Engagement control
    • Make a copy
    • Transfer ownership
    • Delete this note
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Note Insights Versions and GitHub Sync Sharing URL Help
Menu
Options
Engagement control Make a copy Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Write
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       Owned this note    Owned this note      
    Published Linked with GitHub
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    # Goals review for compiler team (2026) ## Roadmaps The following roadmaps include goals that involve the compiler team: ### [Beyond the &](https://rust-lang.github.io/rust-project-goals/2026/roadmap-beyond-the-ampersand.html) > Smart pointers that feel as natural as `&` and `&mut`. **Goals in this theme:** - [Reborrow traits](https://rust-lang.github.io/rust-project-goals/2026/reborrow-traits.html) (Small) - [Field Projections](https://rust-lang.github.io/rust-project-goals/2026/field-projections.html) (Medium) ### [Building blocks](https://rust-lang.github.io/rust-project-goals/2026/roadmap-building-blocks.html) > Expose Cargo and Rust's internal infrastructure as stable, composable building blocks for tooling authors and power users. **Goals in this theme:** - [build-std](https://rust-lang.github.io/rust-project-goals/2026/build-std.html) (Small) ### [Constify all the things](https://rust-lang.github.io/rust-project-goals/2026/roadmap-constify-all-the-things.html) > Richer const generics and compile-time reflection that works without derives. **Goals in this theme:** - [Stabilize Const Traits](https://rust-lang.github.io/rust-project-goals/2026/const-traits.html) (Small) - [reflection and comptime](https://rust-lang.github.io/rust-project-goals/2026/reflection-and-comptime.html) (Medium) - [Const Generics](https://rust-lang.github.io/rust-project-goals/2026/const-generics.html) (Small) ### [Just add async](https://rust-lang.github.io/rust-project-goals/2026/roadmap-just-add-async.html) > Writing async Rust should be a natural extension of sync Rust: take your sync code, sprinkle some `async` and `await` keywords around in logical places, follow the compiler's guidance, and wind up with working code. **Goals in this theme:** - [Box notation for dyn async trait](https://rust-lang.github.io/rust-project-goals/2026/afidt-box.html) (Medium) - [Ergonomic ref-counting: Share trait and move expressions](https://rust-lang.github.io/rust-project-goals/2026/ergonomic-rc.html) (Small) ### [Safety-Critical Rust](https://rust-lang.github.io/rust-project-goals/2026/roadmap-safety-critical-rust.html) > Make Rust viable for certified safety-critical systems by delivering coverage, specification, linting, and `unsafe` documentation foundations. **Goals in this theme:** - [Implement and Maintain MC/DC Coverage Support](https://rust-lang.github.io/rust-project-goals/2026/mcdc-coverage-support.html) (Medium) ### [Secure your supply chain](https://rust-lang.github.io/rust-project-goals/2026/roadmap-secure-your-supply-chain.html) > Know exactly what code ships in your binaries, catch breaking changes before they break your users, and keep your public API under control. **Goals in this theme:** - [Stabilize public/private dependencies](https://rust-lang.github.io/rust-project-goals/2026/pub-priv.html) (Small) ### [Unblocking dormant traits](https://rust-lang.github.io/rust-project-goals/2026/roadmap-unblocking-dormant-traits.html) > Long-blocked type system improvements finally ship, enabling extern types, scalable vectors, and painless trait refactoring. **Goals in this theme:** - [Sized Hierarchy and Scalable Vectors](https://rust-lang.github.io/rust-project-goals/2026/scalable-vectors.html) (Small) ## Summary by support level | Goal | Level | Champion | Notes | | :--- | :---- | :------- | :---- | | [Async Future Memory Optimisation](https://rust-lang.github.io/rust-project-goals/2026/async-future-memory-optimisation.html) | Medium | | Is this Small or Medium? Do... | | [Rust for Linux in stable: compiler features](https://rust-lang.github.io/rust-project-goals/2026/Rust-for-Linux-compiler.html) | Medium | @WesleyWiser | Reviews, RfL meetings | | [reflection and comptime](https://rust-lang.github.io/rust-project-goals/2026/reflection-and-comptime.html) | Medium | @oli-obk | Standard reviews | | [Crate Slicing for Faster Fresh Builds](https://rust-lang.github.io/rust-project-goals/2026/crate-slicing.html) | Medium | | Consultation on approach fe... | | [Project goal - High-Level ML optimizations](https://rust-lang.github.io/rust-project-goals/2026/high-level-ml.html) | Medium | @oli-obk | My changes should be contai... | | [Box notation for dyn async trait](https://rust-lang.github.io/rust-project-goals/2026/afidt-box.html) | Medium | | Implementation review | | [Field Projections](https://rust-lang.github.io/rust-project-goals/2026/field-projections.html) | Medium | | Reviews of big changes need... | | [Stabilize MemorySanitizer and ThreadSanitizer Support](https://rust-lang.github.io/rust-project-goals/2026/stabilization-of-sanitizer-support.html) | Medium | | Reviews, stabilization | | [Incremental Systems Rethought](https://rust-lang.github.io/rust-project-goals/2026/incremental-system-rethought.html) | Medium | | Champion: @jackh726 | | [Evolving the standard library API across editions](https://rust-lang.github.io/rust-project-goals/2026/library-api-evolution.html) | Medium | | Design discussions and impl... | | [Implement and Maintain MC/DC Coverage Support](https://rust-lang.github.io/rust-project-goals/2026/mcdc-coverage-support.html) | Medium | | Review of implementation PR... | | [Async statemachine optimisation](https://rust-lang.github.io/rust-project-goals/2026/async-statemachine-optimisation.html) | Medium | | Most will be review work, b... | | [BorrowSanitizer](https://rust-lang.github.io/rust-project-goals/2026/borrowsanitizer.html) | Medium | @RalfJung | Champion: @RalfJung. Design... | | [Open Enums](https://rust-lang.github.io/rust-project-goals/2026/open-enums.html) | Medium | | Implementation reviews | | [Continue Experimentation with Pin Ergonomics](https://rust-lang.github.io/rust-project-goals/2026/pin-ergonomics.html) | Medium | @oli-obk | Reviews | | [Stabilize Const Traits](https://rust-lang.github.io/rust-project-goals/2026/const-traits.html) | Small | | Code reviews | | [Stabilize cargo-script](https://rust-lang.github.io/rust-project-goals/2026/cargo-script.html) | Small | @jieyouxu | Reviewing any further compi... | | [Const Generics](https://rust-lang.github.io/rust-project-goals/2026/const-generics.html) | Small | | Code reviews | | [Experiment and RFC for `#[manually_drop]`](https://rust-lang.github.io/rust-project-goals/2026/manually-drop-attr.html) | Small | | Implementation reviews | | [Reborrow traits](https://rust-lang.github.io/rust-project-goals/2026/reborrow-traits.html) | Small | | Standard reviews for trait ... | | [Wasm Components](https://rust-lang.github.io/rust-project-goals/2026/wasm-components.html) | Small | | New targets will need revie... | | [Implement Open Rust Namespace Support](https://rust-lang.github.io/rust-project-goals/2026/open-namespaces.html) | Small | | Design discussions, PR review | | [Redesigning `super let`: Flexible Temporary Lifetime Extension](https://rust-lang.github.io/rust-project-goals/2026/redesigning-super-let.html) | Small | | May escalate to medium depe... | | [MIR move elimination](https://rust-lang.github.io/rust-project-goals/2026/mir-move-elimination.html) | Small | | RFC decision | | [build-std](https://rust-lang.github.io/rust-project-goals/2026/build-std.html) | Small | | Reviews of [rust-lang/rfcs#... | | [Stabilize public/private dependencies](https://rust-lang.github.io/rust-project-goals/2026/pub-priv.html) | Small | | Design discussions, PR review | | [Ergonomic ref-counting: Share trait and move expressions](https://rust-lang.github.io/rust-project-goals/2026/ergonomic-rc.html) | Small | | Reviews | | [C++/Rust Interop Problem Space Mapping](https://rust-lang.github.io/rust-project-goals/2026/interop-problem-map.html) | Small | @oli-obk | Reviews | | [Sized Hierarchy and Scalable Vectors](https://rust-lang.github.io/rust-project-goals/2026/scalable-vectors.html) | Small | @davidtwco | Standard reviews for stabil... | ## Summary by champion | Champion | Goal | Level | | :------- | :--- | :---- | | @RalfJung | [BorrowSanitizer](https://rust-lang.github.io/rust-project-goals/2026/borrowsanitizer.html) | Medium | | @WesleyWiser | [Rust for Linux in stable: compiler features](https://rust-lang.github.io/rust-project-goals/2026/Rust-for-Linux-compiler.html) | Medium | | @davidtwco | [Sized Hierarchy and Scalable Vectors](https://rust-lang.github.io/rust-project-goals/2026/scalable-vectors.html) | Small | | @oli-obk | [reflection and comptime](https://rust-lang.github.io/rust-project-goals/2026/reflection-and-comptime.html) | Medium | | | [Project goal - High-Level ML optimizations](https://rust-lang.github.io/rust-project-goals/2026/high-level-ml.html) | Medium | | | [Continue Experimentation with Pin Ergonomics](https://rust-lang.github.io/rust-project-goals/2026/pin-ergonomics.html) | Medium | | | [C++/Rust Interop Problem Space Mapping](https://rust-lang.github.io/rust-project-goals/2026/interop-problem-map.html) | Small | | (no champion) | [Async Future Memory Optimisation](https://rust-lang.github.io/rust-project-goals/2026/async-future-memory-optimisation.html) | Medium | | | [Crate Slicing for Faster Fresh Builds](https://rust-lang.github.io/rust-project-goals/2026/crate-slicing.html) | Medium | | | [Box notation for dyn async trait](https://rust-lang.github.io/rust-project-goals/2026/afidt-box.html) | Medium | | | [Field Projections](https://rust-lang.github.io/rust-project-goals/2026/field-projections.html) | Medium | | | [Stabilize MemorySanitizer and ThreadSanitizer Support](https://rust-lang.github.io/rust-project-goals/2026/stabilization-of-sanitizer-support.html) | Medium | | | [Incremental Systems Rethought](https://rust-lang.github.io/rust-project-goals/2026/incremental-system-rethought.html) | Medium | | | [Evolving the standard library API across editions](https://rust-lang.github.io/rust-project-goals/2026/library-api-evolution.html) | Medium | | | [Implement and Maintain MC/DC Coverage Support](https://rust-lang.github.io/rust-project-goals/2026/mcdc-coverage-support.html) | Medium | | | [Async statemachine optimisation](https://rust-lang.github.io/rust-project-goals/2026/async-statemachine-optimisation.html) | Medium | | | [Open Enums](https://rust-lang.github.io/rust-project-goals/2026/open-enums.html) | Medium | | | [Stabilize Const Traits](https://rust-lang.github.io/rust-project-goals/2026/const-traits.html) | Small | | @jieyouxu | [Stabilize cargo-script](https://rust-lang.github.io/rust-project-goals/2026/cargo-script.html) | Small | | | [Const Generics](https://rust-lang.github.io/rust-project-goals/2026/const-generics.html) | Small | | | [Experiment and RFC for `#[manually_drop]`](https://rust-lang.github.io/rust-project-goals/2026/manually-drop-attr.html) | Small | | | [Reborrow traits](https://rust-lang.github.io/rust-project-goals/2026/reborrow-traits.html) | Small | | | [Wasm Components](https://rust-lang.github.io/rust-project-goals/2026/wasm-components.html) | Small | | | [Implement Open Rust Namespace Support](https://rust-lang.github.io/rust-project-goals/2026/open-namespaces.html) | Small | | | [Redesigning `super let`: Flexible Temporary Lifetime Extension](https://rust-lang.github.io/rust-project-goals/2026/redesigning-super-let.html) | Small | | | [MIR move elimination](https://rust-lang.github.io/rust-project-goals/2026/mir-move-elimination.html) | Small | | @davidtwco | [build-std](https://rust-lang.github.io/rust-project-goals/2026/build-std.html) | Small | | | [Stabilize public/private dependencies](https://rust-lang.github.io/rust-project-goals/2026/pub-priv.html) | Small | | | [Ergonomic ref-counting: Share trait and move expressions](https://rust-lang.github.io/rust-project-goals/2026/ergonomic-rc.html) | Small | ## Goal details ### [Async Future Memory Optimisation](https://rust-lang.github.io/rust-project-goals/2026/async-future-memory-optimisation.html) **Point of contact:** @dingxiangfei2009 **Champion:** TBD **Support level:** Medium **Notes:** Is this Small or Medium? Does it need a champion? > We want to solve `async`-future memory bloat problem. > > [_Playground_](https://play.rust-lang.org/?version=stable&mode=debug&edition=2024&gist=68493d5518e0cfec694750e62157a347) > > ```rust > async fn combining_future(compute: impl Future<Output = ()>) { > async {}.await; > compute.await; > } > > fn main() { > let blob = [0u8; 65536]; > let monster = combining_future(combining_future(combining_future(combining_future(async move { > async {}.await; > println!("{:?}", blob) > })))); > println!("{}", std::mem::size_of_val(&monster)); > //~^ prints at least 1000000 bytes > } > ``` > > We would like to deliver the first `async`-future memory packing scheme `-Zpack-coroutine-layout` as a nightly-only compiler flag, followed by a more aggressive memory packing scheme built on top of the foundation of the first `pack-coroutine-layout` support. Meanwhile, we would like to conduct two experiments in two possible approaches that could further improve the memory economy of `async`-futures. > > - Explore the memory layout optimisation by enabling coroutine state inlining. > - Explore direct lowering of Rust `async`-futures, and coroutines in particular, into native [LLVM coroutine intrinsics](https://llvm.org/docs/Coroutines.html#coroutine-structure-intrinsics). **Comments:** (space for team discussion) ### [Rust for Linux in stable: compiler features](https://rust-lang.github.io/rust-project-goals/2026/Rust-for-Linux-compiler.html) **Point of contact:** @tomassedovic **Champion:** @WesleyWiser **Support level:** Medium **Notes:** Reviews, RfL meetings > Develop and stabilize compiler features that Rust for Linux uses. This is a continuation of the existing Rust for Linux effort. **Comments:** (space for team discussion) ### [reflection and comptime](https://rust-lang.github.io/rust-project-goals/2026/reflection-and-comptime.html) **Point of contact:** @oli-obk **Champion:** @oli-obk **Support level:** Medium **Notes:** Standard reviews > Finish the implemented reflection scheme based on `const fn` that can only be called at compile time. > Valdiate it against existing reflection libraries by giving them a nightly feature that obsoletes having derives and makes the derives no-ops. > Obtain T-lang and T-libs-api buy-in for the scheme and write an RFC. > This proposal is solely for producing const eval values, not for putting types back into the type system. > That will be a follow-up once this proposal has a merged MVP. **Comments:** (space for team discussion) ### [Crate Slicing for Faster Fresh Builds](https://rust-lang.github.io/rust-project-goals/2026/crate-slicing.html) **Point of contact:** @yijunyu **Champion:** TBD **Support level:** Medium **Notes:** Consultation on approach feasibility and soundness concerns > Prototype "crate slicing" — a static analysis technique that computes the transitive closure of items actually used from dependency crates and generates minimal sliced versions, reducing frontend parsing and type-checking overhead during fresh builds. **Comments:** (space for team discussion) ### [Project goal - High-Level ML optimizations](https://rust-lang.github.io/rust-project-goals/2026/high-level-ml.html) **Point of contact:** @ZuseZ4 **Champion:** @oli-obk **Support level:** Medium **Notes:** My changes should be contained to few places in the compiler. Potentially one frontend macro/intrinsic, and otherwise almost exclusively in the backend. > Project goal - High-Level ML optimizations **Comments:** (space for team discussion) ### [Box notation for dyn async trait](https://rust-lang.github.io/rust-project-goals/2026/afidt-box.html) **Point of contact:** @nikomatsakis **Champion:** TBD **Support level:** Medium **Notes:** Implementation review > Introduce `.box` notation and use it to enable dyn dispatch for traits with async methods. The initial scope is `foo.method().box` where `method()` returns a dyn-compatible RPITIT. In the future `.box` could be used more generally but before expanding it we would like to see progress on the work towards [in-place initialization](./in-place-init.md). **Comments:** (space for team discussion) ### [Field Projections](https://rust-lang.github.io/rust-project-goals/2026/field-projections.html) **Point of contact:** @BennoLossin **Champion:** TBD **Support level:** Medium **Notes:** Reviews of big changes needed; also looking for implementation help > We aim to explore and refine the *virtual places* approach for field projections, document its design and interactions in the [beyond-refs wiki](https://rust-lang.github.io/beyond-refs/), implement it as an experiment in the compiler, and prepare RFCs based on the findings. > > This is a continuing goal, see [the goal document of the previous period](https://rust-lang.github.io/rust-project-goals/2025h2/field-projections.html) for historical information. **Comments:** (space for team discussion) ### [Stabilize MemorySanitizer and ThreadSanitizer Support](https://rust-lang.github.io/rust-project-goals/2026/stabilization-of-sanitizer-support.html) **Point of contact:** @jakos-sec **Champion:** TBD **Support level:** Medium **Notes:** Reviews, stabilization > Stabilize the MemorySanitizer and ThreadSanitizer support. This includes fixing open bugs for the sanitizers to open a path for stabilization and the necessary infrastructure changes to provide precompiled and instrumented standard libraries for the sanitizers. **Comments:** (space for team discussion) ### [Incremental Systems Rethought](https://rust-lang.github.io/rust-project-goals/2026/incremental-system-rethought.html) **Point of contact:** @blyxyas **Champion:** TBD **Support level:** Medium **Notes:** Champion: @jackh726 > Design, propose, and implement a redesign of the incremental system to allow for shared common bases between different Rustc invocations with different arguments (i.e. `cargo build` and `cargo check`) > > There's already an [on-going RFC], based on [this blog post and talk] by the same author (and this project goal's point of contact) > As my other project goals, this is a formalization of an already existing effort. **Comments:** (space for team discussion) ### [Evolving the standard library API across editions](https://rust-lang.github.io/rust-project-goals/2026/library-api-evolution.html) **Point of contact:** @Amanieu **Champion:** TBD **Support level:** Medium **Notes:** Design discussions and implementation review. > Add a mechanism for edition-dependent re-exports which allows the standard library to make larger API changes across editions. **Comments:** (space for team discussion) ### [Implement and Maintain MC/DC Coverage Support](https://rust-lang.github.io/rust-project-goals/2026/mcdc-coverage-support.html) **Point of contact:** @RenjiSann **Champion:** TBD **Support level:** Medium **Notes:** Review of implementation PRs; guidance on architecture to avoid previous maintenance issues; input on Stable MIR extension feasibility > Re-implement DC (Decision Coverage) and [MC/DC (Modified Condition/Decision Coverage)][mcdc-wikipedia] instrumentation in rustc with a commitment to ongoing maintenance from AdaCore. **Comments:** (space for team discussion) ### [Async statemachine optimisation](https://rust-lang.github.io/rust-project-goals/2026/async-statemachine-optimisation.html) **Point of contact:** @diondokter **Champion:** TBD **Support level:** Medium **Notes:** Most will be review work, but pushing optimisations to the max will possibly touch on some controversial points that need discussion > Add optimisations to the coroutine MIR transform to elide or simplify the generated statemachines. > > This will help both async futures and generators. > > *Note: This has some overlap with [this other proposal](./async-future-memory-optimisation.md). > I'm not trying to userp the issue. I was working on it incidentally at the same time and noticed very late that proposal already existed.* **Comments:** (space for team discussion) ### [BorrowSanitizer](https://rust-lang.github.io/rust-project-goals/2026/borrowsanitizer.html) **Point of contact:** @icmccorm **Champion:** @RalfJung **Support level:** Medium **Notes:** Champion: @RalfJung. Design discussions, PR review, and upstream integration. > We are building BorrowSanitizer: an LLVM-based instrumentation tool for finding violations of Rust's aliasing model. In 2026, we want to make it feature-complete and useful in practice. **Comments:** (space for team discussion) ### [Open Enums](https://rust-lang.github.io/rust-project-goals/2026/open-enums.html) **Point of contact:** @kupiakos **Champion:** TBD **Support level:** Medium **Notes:** Implementation reviews > Merge and implement the [unnamed enum variants RFC][enum-rfc] to enable > ergonomic *open enums* in the language. > > [enum-rfc]: https://github.com/rust-lang/rfcs/pull/3894 **Comments:** (space for team discussion) ### [Continue Experimentation with Pin Ergonomics](https://rust-lang.github.io/rust-project-goals/2026/pin-ergonomics.html) **Point of contact:** @frank-king **Champion:** @oli-obk **Support level:** Medium **Notes:** Reviews > Continue experimenting with and fleshing out the design and semantics for the pin ergonomics experiment. **Comments:** (space for team discussion) ### [Stabilize Const Traits](https://rust-lang.github.io/rust-project-goals/2026/const-traits.html) **Point of contact:** @fee1-dead **Support level:** Small **Notes:** Code reviews > Finish drafting the [const traits RFC](https://github.com/rust-lang/rfcs/pull/3762) to address outstanding > concerns; do any remaining work necessary in the compiler to push const traits towards stabilization. **Comments:** (space for team discussion) ### [Stabilize cargo-script](https://rust-lang.github.io/rust-project-goals/2026/cargo-script.html) **Point of contact:** @epage **Support level:** Small **Notes:** Reviewing any further compiler changes > Stabilize support for "cargo script", the ability to have a single file that contains both Rust code and a `Cargo.toml`. **Comments:** (space for team discussion) ### [Const Generics](https://rust-lang.github.io/rust-project-goals/2026/const-generics.html) **Point of contact:** @BoxyUwU **Support level:** Small **Notes:** Code reviews > Extend const generics in two independent directions, both aiming for stabilization: > > * **`adt_const_params`**: Allow structs and enums as const generic arguments, not just integers. > * **`min_generic_const_args`**: Allow associated constants as const generic arguments (e.g., `Foo<T::ASSOC_CONST>`). > > We will also model const generics in `a-mir-formality` and experiment with upstreaming those changes into the Rust specification. > This work also serves as a forcing function for advancing a-mir-formality and its integration into the Rust specification. **Comments:** (space for team discussion) ### [Experiment and RFC for `#[manually_drop]`](https://rust-lang.github.io/rust-project-goals/2026/manually-drop-attr.html) ![Help Wanted][] **Point of contact:** @thunderseethe **Support level:** Small **Notes:** Implementation reviews > Add a `#[manually_drop]` attribute to > > * Allow cross-language bindings to expose struct fields without compatibility hazards, and > * Make all code that disables default destructor behavior more convenient to use in Rust. **Comments:** (space for team discussion) ### [Reborrow traits](https://rust-lang.github.io/rust-project-goals/2026/reborrow-traits.html) **Point of contact:** @aapoalas **Support level:** Small **Notes:** Standard reviews for trait implementation PRs > Bring the `Reborrow` and `CoerceShared` trait to nightly Rust, enabling iteration based on user feedback. Begin work on nontrivial cases where more than one lifetime is being reborrowed or coerced into shared **Comments:** (space for team discussion) ### [Wasm Components](https://rust-lang.github.io/rust-project-goals/2026/wasm-components.html) **Point of contact:** @yoshuawuyts **Support level:** Small **Notes:** New targets will need review and approval > In 2026 we want to improve the state of Wasm Component support in Rust. This > means adding and stabilizing three new compiler targets, as well as begin > experimentation with Wasm-specific language features. **Comments:** (space for team discussion) ### [Implement Open Rust Namespace Support](https://rust-lang.github.io/rust-project-goals/2026/open-namespaces.html) ![Help Wanted][] **Point of contact:** @epage **Support level:** Small **Notes:** Design discussions, PR review > Navigate the cross-team design work to get [RFC 3243](https://github.com/rust-lang/rfcs/pull/3243) implemented. **Comments:** (space for team discussion) ### [Redesigning `super let`: Flexible Temporary Lifetime Extension](https://rust-lang.github.io/rust-project-goals/2026/redesigning-super-let.html) **Point of contact:** @dianne **Support level:** Small **Notes:** May escalate to medium depending on how the feature design turns out. > I aim to meet with the language team to discuss redesigning the `super let` feature, write an RFC for it, and work towards stabilizing it. **Comments:** (space for team discussion) ### [MIR move elimination](https://rust-lang.github.io/rust-project-goals/2026/mir-move-elimination.html) **Point of contact:** @Amanieu **Support level:** Small **Notes:** RFC decision > Add a MIR optimization which eliminates move operations. This will require changes to the MIR semantics of `move` to enable the optimization to cases where a value has had its address taken (LLVM already eliminates moves when this is not the case). **Comments:** (space for team discussion) ### [build-std](https://rust-lang.github.io/rust-project-goals/2026/build-std.html) **Point of contact:** @davidtwco **Support level:** Small **Notes:** Reviews of [rust-lang/rfcs#3874] and [rust-lang/rfcs#3875] and any implementation patches > Complete the remaining design work for #3874 and #3875 and start on implementation. **Comments:** davidtwco: I've added myself as a champion for this - an obvious omission ### [Stabilize public/private dependencies](https://rust-lang.github.io/rust-project-goals/2026/pub-priv.html) ![Help Wanted][] **Point of contact:** @epage **Support level:** Small **Notes:** Design discussions, PR review > Implement and stabilize the MVP of public dependencies described in [RFC #3516]. Public dependencies allow crates to declare dependencies whose types are *meant* to be exposed in the public API. **Comments:** (space for team discussion) ### [Ergonomic ref-counting: Share trait and move expressions](https://rust-lang.github.io/rust-project-goals/2026/ergonomic-rc.html) **Point of contact:** @nikomatsakis **Support level:** Small **Notes:** Reviews > Implement and prototype two foundational improvements for ergonomic ref-counting: (1) a `Share` trait that semantically identifies types where cloning creates an alias to the same underlying value, and (2) move expressions (`move($expr)`) that allow precise control over what closures capture and when. These changes lay groundwork for future ergonomic improvements while delivering immediate value, with prototypes targeted for summer 2026. **Comments:** (space for team discussion) ### [C++/Rust Interop Problem Space Mapping](https://rust-lang.github.io/rust-project-goals/2026/interop-problem-map.html) **Point of contact:** @baumanj **Champion:** @oli-obk **Support level:** Small **Notes:** Reviews > Document a set of technical issues related to C++/Rust interoperability with broad community consensus to serve as a starting point for proposed solutions and facilitating cooperation among stakeholders in both language communities. **Comments:** (space for team discussion) ### [Sized Hierarchy and Scalable Vectors](https://rust-lang.github.io/rust-project-goals/2026/scalable-vectors.html) **Point of contact:** @davidtwco **Champion:** @davidtwco **Support level:** Small **Notes:** Standard reviews for stabilization and SVE work > Over the next year, we will build on the foundational work from 2025 to stabilize > the `Sized` trait hierarchy and continue nightly support for scalable vectors: > > - Stabilize the refined `Sized` trait hierarchy (without constness), unblocking extern types > - Propose and implement `const Sized` to support scalable vectors > - Achieve RFC acceptance for [rfcs#3838] (Scalable Vectors) > - Land SVE types and intrinsics in stdarch for nightly experimentation > - Continue addressing stabilization blockers for SVE itself > - Begin design work for supporting the Scalable Matrix Extension (SME) > > The `const Sized` work (Part II of [rfcs#3729]) is deferred to a future goal, > allowing us to deliver value sooner through the trait hierarchy stabilization. > This future work interacts with ongoing [const generics][const-generics-goal] > efforts, as `const Sized` depends on progress in const traits. > > [const-generics-goal]: ../2025h2/const-generics.md **Comments:** (space for team discussion)

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully