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

Maybe regression in nightly when compiling cursive_core #90043

Closed
aplanas opened this issue Oct 19, 2021 · 6 comments
Closed

Maybe regression in nightly when compiling cursive_core #90043

aplanas opened this issue Oct 19, 2021 · 6 comments
Labels
C-bug Category: This is a bug. regression-from-stable-to-beta Performance or correctness regression from stable to beta.

Comments

@aplanas
Copy link
Contributor

aplanas commented Oct 19, 2021

Code

I found this, and I think that can be a compiler regression.

git clone https://github.com/gyscos/cursive.git
cd cursive/cursive-core
git checkout cursive_core-v0.2.1
cargo build
...
   Compiling cursive_core v0.1.1 (/.../cursive/cursive-core)
error[E0277]: the trait bound `dyn view_trait::View: view_trait::View` is not satisfied
  --> cursive-core/src/views/list_view.rs:99:14
   |
99 |         view.take_focus(direction::Direction::none());
   |              ^^^^^^^^^^ the trait `view_trait::View` is not implemented for `dyn view_trait::View`

For more information about this error, try `rustc --explain E0277`.
error: could not compile `cursive_core` due to previous error

It works on stable or in nightly-2021-10-15

cargo +stable build
...
   Compiling cursive_core v0.1.1 (/home/aplanas/mnt/Work/kk/cursive/cursive-core)
    Finished dev [unoptimized + debuginfo] target(s) in 20.90s

Version it worked on

It most recently worked on: nightly-2021-10-15

rustc +nightly-2021-10-15 --version --verbose:

rustc 1.57.0-nightly (e1e9319d9 2021-10-14)
binary: rustc
commit-hash: e1e9319d93aea755c444c8f8ff863b0936d7a4b6
commit-date: 2021-10-14
host: x86_64-unknown-linux-gnu
release: 1.57.0-nightly
LLVM version: 13.0.0

Version with regression

rustc --version --verbose:

rustc 1.58.0-nightly (bd41e09da 2021-10-18)
binary: rustc
commit-hash: bd41e09da334697c0f993b36685cb599061d9faa
commit-date: 2021-10-18
host: x86_64-unknown-linux-gnu
release: 1.58.0-nightly
LLVM version: 13.0.0
@aplanas aplanas added C-bug Category: This is a bug. regression-untriaged Untriaged performance or correctness regression. labels Oct 19, 2021
@rustbot rustbot added the I-prioritize Issue: Indicates that prioritization has been requested for this issue. label Oct 19, 2021
@ehuss
Copy link
Contributor

ehuss commented Oct 19, 2021

Thanks for the report! Unfortunately I'm unable to reproduce with the steps given.

I noticed that Cargo.lock is not checked in, so perhaps you are using some older dependencies? Can you maybe post the contents of Cargo.lock and I can see if that is related?

@aplanas
Copy link
Contributor Author

aplanas commented Oct 19, 2021

Ouch I make a mistake (edited the first comment). The reproducer should say git checkout cursive_core-v0.2.1 instead of the switch

@ehuss
Copy link
Contributor

ehuss commented Oct 19, 2021

Ah, thanks for the clarification.

I'm pretty sure this is caused by #86011, though it is not clear to me why. cc @tlyu. This may be difficult to create a small reproduction since there are a lot of generics and traits involved. But if you can maybe try to narrow it down to a small example, that might help.

@JohnTitor
Copy link
Member

@aplanas I reverted the above PR, could you try to compile your crate with the latest master?

cargo install rustup-toolchain-install-master
rustup-toolchain-install-master 42983a28ab3c70728da7a9b932b667c978dd898d
cargo +42983a28ab3c70728da7a9b932b667c978dd898d build

Or, it's fine to wait for the next nightly.

@JohnTitor JohnTitor added regression-from-stable-to-beta Performance or correctness regression from stable to beta. and removed regression-untriaged Untriaged performance or correctness regression. labels Oct 20, 2021
@aplanas
Copy link
Contributor Author

aplanas commented Oct 20, 2021

@JohnTitor I tested 42983a28ab3c70728da7a9b932b667c978dd898d and I can confirm that the compilation succeeded.

I am still not able to minimize the reproducer, tho.

@JohnTitor
Copy link
Member

Thanks for confirming! No worries about the repro case or test, I believe your crate has the same issue as #89935 and #90025 has a regression test for it. Beta (1.57) still has the issue but it will be fixed once the revert PR is beta-accepted.
Closing as fixed.

@JohnTitor JohnTitor removed the I-prioritize Issue: Indicates that prioritization has been requested for this issue. label Oct 20, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: This is a bug. regression-from-stable-to-beta Performance or correctness regression from stable to beta.
Projects
None yet
Development

No branches or pull requests

4 participants