-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Rust: fix missing canonical paths for trait impls on builtin numeric types #20001
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
Conversation
588c791 to
d64a6cd
Compare
| ( | ||
| c1 = c2 or | ||
| c2 = c1.getADependency() or | ||
| c1 = c2.getADependency() | ||
| ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Parens can be removed if you replace the preceding and with |.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I found a fix that matches better with the original intent of the code. Hopefully the tests agree as well.
ffd107d to
0bf11da
Compare
hvitved
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM; let's see what DCA says.
| trait = this.resolveTraitTy() and | ||
| trait.hasCanonicalPath(c2) and | ||
| if this.hasCanonicalPath(c2) | ||
| if trait.hasCanonicalPath(c1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I figured out what happens; this needs to be reverted, and then we need to add c = this and before the line this.getName() = "core" and inside CrateItemNode.providesCanonicalPathPrefixFor.
0bf11da to
d20bc98
Compare
@hvitved This is probably the wrong way to fix this.