-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
default methods are broken cross crate when defined on structs #7481
Comments
Part of #2794 |
A quick check shows it happens during privacy checking and the error is emitted on line 127 of |
@Aatch: that's probably just the first thing to look for it |
@thestinger looks like you're right. I did a little more digging and it looks like default methods are pulled out of the crate metadata in this instance. Inlining is strange because the definition is considered to be in the local crate, but also not, depending on who you ask... |
It isn't clear to me that inline is actually related to this... I see what is going wrong and my biggest question at this point is how anything /ever/ works... Continuing to investigate. |
Got it. If the type of the receiver is a struct, privacy checking breaks when you try to invoke a default method from another crate. Renamed the bug. |
Have a fix that I'll push soon. |
The text was updated successfully, but these errors were encountered: