Skip to content

Maybe regression in nightly when compiling cursive_core #90043

New issue

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

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

Already on GitHub? # to your account

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
# for free to join this conversation on GitHub. Already have an account? # 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