-
Notifications
You must be signed in to change notification settings - Fork 13.6k
Open
Labels
A-trait-systemArea: Trait systemArea: Trait systemB-RFC-approvedBlocker: Approved by a merged RFC but not yet implemented.Blocker: Approved by a merged RFC but not yet implemented.B-unstableBlocker: Implemented in the nightly compiler and unstable.Blocker: Implemented in the nightly compiler and unstable.C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCF-trait_alias`#![feature(trait_alias)]``#![feature(trait_alias)]`S-tracking-needs-summaryStatus: It's hard to tell what's been done and what hasn't! Someone should do some investigation.Status: It's hard to tell what's been done and what hasn't! Someone should do some investigation.T-langRelevant to the language teamRelevant to the language team
Description
This is a tracking issue for trait aliases (rust-lang/rfcs#1733).
TODO:
- Implement: tracking issue
- Bringing a trait alias into scope doesn't allow calling methods from its component traits #56485 — Bringing a trait alias into scope doesn't allow calling methods from its component traits (done in resolve: collect trait aliases along with traits #59166)
- ICE with trait aliases and use items #56488 — ICE with trait aliases and use items
- Nightly Type Alias Compiler panic
unexpected definition: TraitAlias
#57023 — Nightly Type Alias Compiler panicunexpected definition: TraitAlias
-
INCOHERENT_AUTO_TRAIT_OBJECTS
future-compatibility warning #57059 —INCOHERENT_AUTO_TRAIT_OBJECTS
future-compatibility warning (superseded by add coherence future-compat warnings for marker-only trait objects #56481) - Document
- Stabilize
Unresolved questions:
- Are bounds on other input types than the receiver enforced or implied?
- Should we keep the current behaviour of "shallow-banning"
?Sized
bounds in trait objects, ban them "deeply" (through trait alias expansion), or permit them everywhere with no effect? - Insufficient flexibility
- Inconvenient syntax
- Misleading naming
- Which of constraint/bound/type aliases are desirable
scampi, LukasKalbertodt, alexreg, luojia65, livingsilver94 and 278 moreIxrec, Pratyush, Lapin0t, KodrAus, mehcode and 66 morejhyeom26, insipx, chirsz-ever, kazukiyoshida, egormalyutin and 44 morefmease, magistrser, szagi3891, gilescope, ohsayan and 18 moreaymericbeaumet, Dushistov, hirrolot, jhyeom26, stanislav-tkach and 29 more
Metadata
Metadata
Assignees
Labels
A-trait-systemArea: Trait systemArea: Trait systemB-RFC-approvedBlocker: Approved by a merged RFC but not yet implemented.Blocker: Approved by a merged RFC but not yet implemented.B-unstableBlocker: Implemented in the nightly compiler and unstable.Blocker: Implemented in the nightly compiler and unstable.C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCF-trait_alias`#![feature(trait_alias)]``#![feature(trait_alias)]`S-tracking-needs-summaryStatus: It's hard to tell what's been done and what hasn't! Someone should do some investigation.Status: It's hard to tell what's been done and what hasn't! Someone should do some investigation.T-langRelevant to the language teamRelevant to the language team