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

Failure to compile on Rust nightly 1.70.0 #432

Closed
janhohenheim opened this issue Mar 20, 2023 · 9 comments
Closed

Failure to compile on Rust nightly 1.70.0 #432

janhohenheim opened this issue Mar 20, 2023 · 9 comments
Labels
bug Something isn't working

Comments

@janhohenheim
Copy link

janhohenheim commented Mar 20, 2023

I'm not using this crate at all, but it is a transient dependency of mine and I recently got a CI failure.
It seems like objc2-0.3.0-beta.3.patch-leaks.2 fails to compile on Rust nightly 1.70.0, but compiles on nightly 1.69.0.

@janhohenheim janhohenheim changed the title Failure to compile on rust 1.70.0 Failure to compile on Rust nightly 1.70.0 Mar 20, 2023
@madsmtm
Copy link
Owner

madsmtm commented Mar 20, 2023

Thank you for the report! I've verified that it is present on master as well.

It seems more like a std or rustc bug though? The bounds on our Iterator impl should be completely fine, but it now fails due to the Self::Item: ~const Destruct bound on fn nth added in rust-lang/rust#104100.

I'll probably submit a regression report upstream in the next few days (if you don't do it first?).

@madsmtm madsmtm added the bug Something isn't working label Mar 20, 2023
@janhohenheim
Copy link
Author

Since you actually know about the soundness of your code, I'd be glad if you could submit it 🙂

@fee1-dead
Copy link

I'm not sure if the ~const Destruct bound is the culprit, since it should have no effect on code that are not using const trait bounds.

@kchibisov
Copy link

@fee1-dead be aware that the main issue here that it's a regression from stable to nightly since the latest stable builds this code just fine.

I could submit bug report as well though, but I'm not a maintainer of this crate, and not sure I can clearly express the issue other than saying that code was fine on stable for like near a year.

@fee1-dead
Copy link

I wasn't denying that the regression exists. I was mainly coming from a rustc maintainer perspective since I approved the linked PR above. To find the actual change that caused this would involve cargo-bisect-rustc. I don't have time to run that right now, but opening a rust-lang/rust issue would help as well.

@kchibisov
Copy link

Opened upstream ticket rust-lang/rust#109632

@madsmtm madsmtm pinned this issue Mar 26, 2023
@madsmtm
Copy link
Owner

madsmtm commented Mar 26, 2023

I'd like to wait and see what happens upstream, since it is a rustc bug, but if the issue persists for let's say ~5 days more, I'll push a patched objc2 version to deal with it regardless

@madsmtm
Copy link
Owner

madsmtm commented Apr 2, 2023

Update: I've created a new version 0.3.0-beta.3.patch-leaks.3, so affected nightly users should simply be able to do a cargo update to fix the issue for them.

@fee1-dead created rust-lang/rust#109684, so I suspect that the issue will be fixed properly soon - I will keep this issue open until that happens.

@madsmtm
Copy link
Owner

madsmtm commented Apr 13, 2023

This has been fixed in std now, thanks to @fee1-dead for their work in doing so!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants