owned this note
owned this note
Published
Linked with GitHub
# Backlog Bonanza 2022-02-09
[GitHub query](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AC-tracking-issue+label%3AT-lang)
## omg what are we doing
* Take things that have been unstable for a while and "disposition them".
* Goal: Everything that is nightly only has one or more of the following labels, indicating the blocker(s) to stabilizing it:
* S-tracking-ready-to-stabilize: Needs a stabilization PR (good to go :train:)
* S-tracking-needs-to-bake: Needs time to bake (set a date? other criteria?)
* S-tracking-impl-incomplete: Not code complete or blocking bugs
* S-tracking-unimplemented: Implementation not begun
* S-tracking-design-concerns: Blocking design concerns
* This might be "doesn't quite seem to deliver value we hoped for" or "something doesn't feel right"
* S-tracking-perma-unstable
* Internal implementation detail of rustc, stdlib
* S-tracking-needs-investigation
Attendance: Josh, Scott, Felix, Mark, David Barsky, Michael Goulet
---
# Tracking issue for RFC 1861: Extern types #43467
Link: https://github.com/rust-lang/rust/issues/43467
* Intended for FFI and similar, opaque type
* Questions?
* `?Sized`, etc.
* Interactions with unsizing -- &Opaque -> &dyn Foo doesn't work
* Is this forward-compatible? Could we make `extern type` opaque and `?Sized` for now, and potentially extend it in the future to allow sized values or custom DSTs?
* Did this see a new design after the ThinPtr and other libs-api discussions?
* e.g., `ptr::null::<Foo>` doesn't currently work, because `extern type Foo: ?Sized`
* May actually want a `Metadata = ()` bound.
* Scott to briefly summarize the discussed open question (thin ptrs) and ask for a complete summary.
# Tracking issue for tweaks to object safety (RFC 2027) #43561
Link: https://github.com/rust-lang/rust/issues/43561
* Niko may have opinions :)
* Theory: moves the where clause such that things can't be called, but dyn Foo can exist?
* S-needs-summary; Josh to ask Niko in a comment
# Tracking issue for oom=panic (RFC 2116) #43596
Link: https://github.com/rust-lang/rust/issues/43596
* Implementation work: https://github.com/rust-lang/rust/pull/88098, https://github.com/rust-lang/rust/pull/92535
* originally related to `try_reserve` and similar mechanisms, now about unwinding on oom rather than aborting
* S-needs-summary about open questions
# :microscope: Tracking issue for generic associated types (GAT) #44265
Link: https://github.com/rust-lang/rust/issues/44265
* Open design question of where to put where clauses
* resolved, but not yet finalized FCP
* needs https://github.com/rust-lang/rust/pull/90076 to land
* S-needs-summary -- maybe just one last unresolved question
* just a couple more GATs-blocking issues
* but likely nearly ready to stabilize
# :microscope: Tracking issue for RFC 2089: Implied bounds #44491
Link: https://github.com/rust-lang/rust/issues/44491
* S-needs-summary?
* unclear current state -- maybe partially implemented?
* S-design-concerns?
* some concern around semver compat hazards
* `Cell<T: Copy>` changing to `Cell<T: !Copy>` not possible with this
* Currently, need to copy the trait bound onto your method if the type has it in the type definition
* doesn't block impl, but needs an answer before stabilizing.
* S-impl-incomplete
* Josh to post comment
# Tracking issue for RFC 2115: In-band lifetime bindings #44524
Link: https://github.com/rust-lang/rust/issues/44524
* Dispositioned close (FCP finished)
* To be removed -- just pending
* S-design-concerns: will be eventually closed because of them
* really hard to know where the lifetime comes from when looking at one
* shadowing vs. using difficult to distinguish (including just typos)
* There was an fcp close that discussed some of the issues
* Scott to comment asking for a PR removing it
* Done: https://github.com/rust-lang/rust/issues/44524#issuecomment-1034094520
# Tracking issue for const generics (RFC 2000) #44580
Link: https://github.com/rust-lang/rust/issues/44580
* Shipped min_const_generics
* const-generics group continuing to do work, and continuing evolution
* A meta tracking issue
* Maybe the RFC 2000 tracking issue should be closed, since that particular RFC is largely implemented?
* And new tracking issues filed for any new work
* https://github.com/rust-lang/project-const-generics exists
* A zulip thread about how to best track ongoing design/impl work -- Felix to start
# Tracking issue for RFC 2045: improving #[target_feature] #44839
Link: https://github.com/rust-lang/rust/issues/44839
* Initial RFC implemented, but has a long-tail target-specific component
* Potentially remaining portion is `--enable-feature` CLI opts from the RFC
* Discussion primarily focusing on new CPU features
* `--enable-feature` not being tracked (anywhere?)
* There are an infinite long-tail of future CPU features we could support, and tracking them on one issue does not feel right
* Docs: https://doc.rust-lang.org/nightly/reference/attributes/codegen.html#the-target_feature-attribute
* Proposal:
* FCP Close this issue; any new features slated for stabilization should be in new issues if needed
* Implicitly indicate that --enable-feature is no longer desired without a new proposal
* Felix to own the fcp close
# Tracking issue for arbitrary_self_types #44874
Link: https://github.com/rust-lang/rust/issues/44874
* Provides support for `self: Box<Self>`, etc.
* Stabilized some of these?
* in https://github.com/rust-lang/rust/pull/64325/
* S-needs-summary -- unclear what is currently stable and unstable, etc.
* Felix to leave a comment
# Tracking issue for RFC 2137: Support defining C-compatible variadic functions in Rust #44930
Link: https://github.com/rust-lang/rust/issues/44930
* Implemented, substantially working
* Doesn't work on all architectures yet
* but unlike e.g. asm!, there may not be architecture-specific code
* what tier of architecture needs support for this to be stable?
* Is this the tracking issue for the libs-api portion of this?
* Could cfg gate `std::ffi::VaList` etc
* but portability lint implications
* Target tier policy for u128, stack overflow detection, etc.
* need to document deficiencies for safety features
* u128 support expected when raising to next tier
* Needs-decision/nominated
* discuss at next meeting