Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Specify trait implementation, resolution, and coherence for 1.0 #11166

Closed
pnkfelix opened this issue Dec 27, 2013 · 7 comments
Closed

Specify trait implementation, resolution, and coherence for 1.0 #11166

pnkfelix opened this issue Dec 27, 2013 · 7 comments
Labels
A-trait-system Area: Trait system P-medium Medium priority
Milestone

Comments

@pnkfelix
Copy link
Member

Niko has a grab-bag of issues over on #5527.

There are a bunch of desiderata for traits in Rust, and we won't get to all of them for 1.0.

But we do need to firm up exactly what the core semantics are (for how trait matching is done, and what the limits are for the backward-compatible core of the language), with a specification against which we can compare the implementation.

@pnkfelix
Copy link
Member Author

As an example of the sort of thing we need to work out, see #8075 (and #3429).

@pnkfelix
Copy link
Member Author

pnkfelix commented Jan 9, 2014

Accepted for 1.0, P-backcompat-lang.

@reem
Copy link
Contributor

reem commented Dec 15, 2014

Visiting for triage: some progress has been made (particularly with all the new multi dispatch and associated type rules), but more needs to be done to fully specify everything.

@aturon
Copy link
Member

aturon commented Jan 8, 2015

Nominating for removal from P-backcompat-lang. The spec/documentation side is probably covered by existing bugs; this issue should perhaps be closed.

@pnkfelix pnkfelix added this to the 1.0 milestone Jan 8, 2015
@pnkfelix
Copy link
Member Author

pnkfelix commented Jan 8, 2015

Assigning 1.0 milestone (specifically the writeup of the semantics -- I consider it polish).

@pnkfelix
Copy link
Member Author

pnkfelix commented Feb 8, 2015

(I probably should have removed P-backcompat-lang from this ticket when I assigned this to 1.0 and categorized it as a polish issue. It is possible that writing up the semantics will expose bugs that would necessitate a change to the language specification, but it is highly unlikely, and probably does not justify the label.)

@pnkfelix pnkfelix added P-medium Medium priority and removed P-backcompat-lang labels Feb 8, 2015
@pnkfelix
Copy link
Member Author

pnkfelix commented Apr 2, 2015

closing; if someone can come up with a spec, great, but we're not going to block anything ourselves to do so.

@pnkfelix pnkfelix closed this as completed Apr 2, 2015
flip1995 pushed a commit to flip1995/rust that referenced this issue Jul 31, 2023
Refactor some of  `dereference.rs` to util functions

I've seen a few lints that need to be able to tell if changing the type of an expression would be a vaild suggestion. This extracts part of how that's done from `explicit_auto_deref`.

changelog: None
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-trait-system Area: Trait system P-medium Medium priority
Projects
None yet
Development

No branches or pull requests

3 participants