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

'either' fails to compile on s390x #82095

Closed
dot-asm opened this issue Feb 14, 2021 · 4 comments
Closed

'either' fails to compile on s390x #82095

dot-asm opened this issue Feb 14, 2021 · 4 comments
Labels
O-SystemZ Target: SystemZ processors (s390x) regression-from-stable-to-stable Performance or correctness regression from one stable version to another.

Comments

@dot-asm
Copy link

dot-asm commented Feb 14, 2021

The problem appears to be s390x-specific. At least I failed to spot another target that would fail.

Code

To reproduce the problem

  • cargo new foo
  • cd foo
  • add either = "^1.6" to [dependencies] in Cargo.toml
  • cargo check

I expected to see this happen: successful completion of cargo check

Instead, this happened: failure to compile either, see below for error messages

Version it worked on

It most recently worked on: 1.49.0

Version with regression

rustc --version --verbose:

rustc 1.50.0 (cb75ad5db 2021-02-10)
binary: rustc
commit-hash: cb75ad5db02783e8b0222fee363c5f63f7e2cf5b
commit-date: 2021-02-10
host: s390x-unknown-linux-gnu
release: 1.50.0

Backtrace

Backtrace

    Checking either v1.6.1
     Running `rustc --crate-name either /home/appro/.cargo/registry/src/git.luolix.top-eae4ba8cbf2ce1c7/either-1.6.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="use_std"' -C metadata=98ea2ad6c29b0e25 -C extra-filename=-98ea2ad6c29b0e25 --out-dir /home/appro/a/foo/target/debug/deps -L dependency=/home/appro/a/foo/target/debug/deps --cap-lints allow`
error[E0220]: associated type `Item` not found for `L`
   --> /home/appro/.cargo/registry/src/git.luolix.top-eae4ba8cbf2ce1c7/either-1.6.1/src/lib.rs:394:35
    |
394 |         R: IntoIterator<Item = L::Item>,
    |                                   ^^^^ associated type `Item` not found

error[E0220]: associated type `IntoIter` not found for `L`
   --> /home/appro/.cargo/registry/src/git.luolix.top-eae4ba8cbf2ce1c7/either-1.6.1/src/lib.rs:391:41
    |
391 |     pub fn into_iter(self) -> Either<L::IntoIter, R::IntoIter>
    |                                         ^^^^^^^^ associated type `IntoIter` not found

error[E0220]: associated type `IntoIter` not found for `R`
   --> /home/appro/.cargo/registry/src/git.luolix.top-eae4ba8cbf2ce1c7/either-1.6.1/src/lib.rs:391:54
    |
391 |     pub fn into_iter(self) -> Either<L::IntoIter, R::IntoIter>
    |                                                      ^^^^^^^^ associated type `IntoIter` not found

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0220`.
error: could not compile `either`

Caused by:
  process didn't exit successfully: `rustc --crate-name either /home/appro/.cargo/registry/src/git.luolix.top-eae4ba8cbf2ce1c7/either-1.6.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="use_std"' -C metadata=98ea2ad6c29b0e25 -C extra-filename=-98ea2ad6c29b0e25 --out-dir /home/appro/a/foo/target/debug/deps -L dependency=/home/appro/a/foo/target/debug/deps --cap-lints allow` (exit code: 1)

@rustbot modify labels: +regression-from-stable-to-stable -regression-untriaged

@rustbot rustbot added regression-from-stable-to-stable Performance or correctness regression from one stable version to another. I-prioritize Issue: Indicates that prioritization has been requested for this issue. labels Feb 14, 2021
@LeSeulArtichaut LeSeulArtichaut added the O-SystemZ Target: SystemZ processors (s390x) label Feb 14, 2021
@dot-asm dot-asm changed the title 'either' fails to compile of s390x 'either' fails to compile on s390x Feb 14, 2021
@jyn514
Copy link
Member

jyn514 commented Feb 14, 2021

@dot-asm how did you get your rust compiler? #80810 may be related.

@dot-asm
Copy link
Author

dot-asm commented Feb 14, 2021

I've initially noted the failure on travis-ci.com and then reduced it to the minimal setup with boilerplate project with single dependency on a s390x system. On travis it is was auto-updated by travis itself. And on "a s390x system" it was freshly installed with curl ... | sh.

@dot-asm
Copy link
Author

dot-asm commented Feb 14, 2021

#80810 may be related.

Yes, appears as duplicate. Sorry about the noise.

As potentially relevant additional info, travis runs Ubuntu 16, and "a s390x system" - a seasoned SuSE 12.

@jyn514
Copy link
Member

jyn514 commented Feb 14, 2021

Ok, closing as a duplicate of #80810 then. Thanks for the report.

@jyn514 jyn514 closed this as completed Feb 14, 2021
@apiraino apiraino removed the I-prioritize Issue: Indicates that prioritization has been requested for this issue. label Feb 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
O-SystemZ Target: SystemZ processors (s390x) regression-from-stable-to-stable Performance or correctness regression from one stable version to another.
Projects
None yet
Development

No branches or pull requests

5 participants