4

Fix exit status / wait status on non-Unix cfg(unix) platforms by ijackson · Pull...

 11 months ago
source link: https://github.com/rust-lang/rust/pull/115108
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Collaborator

Finished benchmarking commit (9857952): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

This benchmark run did not return any relevant results for this metric.

Max RSS (memory usage)

Results

Cycles

Results

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 628.687s -> 628.012s (-0.11%) Artifact size: 271.30 MiB -> 271.32 MiB (0.01%)

Contributor

Hey, it looks like this PR breaks the compilation for armv7-sony-vita-newlibeabihf target, seems to be a module resolution problem.

error[E0583]: file not found for module `wait_status`
  --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/process/process_unsupported.rs:58:1
   |
58 | mod wait_status;
   | ^^^^^^^^^^^^^^^^
   |
   = help: to create the module `wait_status`, create file "/home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/process/wait_status.rs" or "/home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/process/wait_status/mod.rs"

error[E0432]: unresolved import `wait_status::ExitStatus`
  --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/unix/process/process_unsupported.rs:59:9
   |
59 | pub use wait_status::ExitStatus;
   |         ^^^^^^^^^^^^^^^^^^^^^^^ no `ExitStatus` in `sys::unix::process::process_inner::wait_status`
   |
help: consider importing this struct instead
   |
59 | pub use crate::process::ExitStatus;
   |         ~~~~~~~~~~~~~~~~~~~~~~~~~~

error[E0432]: unresolved import `crate::sys::process::ExitStatus`
  --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/process.rs:10:35
   |
10 | use crate::sys::process::{EnvKey, ExitStatus, Process, StdioPipes};
   |                                   ^^^^^^^^^^ no `ExitStatus` in `sys::unix::process`
   |
   = help: consider importing this struct instead:
           crate::process::ExitStatus

error[E0599]: no function or associated item named `from_inner` found for struct `ExitStatus` in the current scope
    --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/os/unix/process.rs:300:30
     |
300  |         process::ExitStatus::from_inner(From::from(raw))
     |                              ^^^^^^^^^^ function or associated item not found in `ExitStatus`
     |
    ::: /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/process.rs:1594:1
     |
1594 | pub struct ExitStatus(imp::ExitStatus);
     | --------------------- function or associated item `from_inner` not found for this struct
     |
     = help: items from traits can only be used if the trait is implemented and in scope
note: `FromInner` defines an item `from_inner`, perhaps you need to implement it
    --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/mod.rs:80:1
     |
80   | pub trait FromInner<Inner> {
     | ^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: no method named `as_inner` found for reference `&ExitStatus` in the current scope
   --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/os/unix/process.rs:304:14
    |
304 |         self.as_inner().signal()
    |              ^^^^^^^^ method not found in `&ExitStatus`
    |
    = help: items from traits can only be used if the trait is implemented and in scope
note: `AsInner` defines an item `as_inner`, perhaps you need to implement it
   --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/mod.rs:62:1
    |
62  | pub trait AsInner<Inner: ?Sized> {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: no method named `as_inner` found for reference `&ExitStatus` in the current scope
   --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/os/unix/process.rs:308:14
    |
308 |         self.as_inner().core_dumped()
    |              ^^^^^^^^ method not found in `&ExitStatus`
    |
    = help: items from traits can only be used if the trait is implemented and in scope
note: `AsInner` defines an item `as_inner`, perhaps you need to implement it
   --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/mod.rs:62:1
    |
62  | pub trait AsInner<Inner: ?Sized> {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: no method named `as_inner` found for reference `&ExitStatus` in the current scope
   --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/os/unix/process.rs:312:14
    |
312 |         self.as_inner().stopped_signal()
    |              ^^^^^^^^ method not found in `&ExitStatus`
    |
    = help: items from traits can only be used if the trait is implemented and in scope
note: `AsInner` defines an item `as_inner`, perhaps you need to implement it
   --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/mod.rs:62:1
    |
62  | pub trait AsInner<Inner: ?Sized> {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: no method named `as_inner` found for reference `&ExitStatus` in the current scope
   --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/os/unix/process.rs:316:14
    |
316 |         self.as_inner().continued()
    |              ^^^^^^^^ method not found in `&ExitStatus`
    |
    = help: items from traits can only be used if the trait is implemented and in scope
note: `AsInner` defines an item `as_inner`, perhaps you need to implement it
   --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/mod.rs:62:1
    |
62  | pub trait AsInner<Inner: ?Sized> {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: no method named `as_inner` found for struct `ExitStatus` in the current scope
    --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/os/unix/process.rs:320:14
     |
320  |         self.as_inner().into_raw().into()
     |              ^^^^^^^^ method not found in `ExitStatus`
     |
    ::: /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/process.rs:1594:1
     |
1594 | pub struct ExitStatus(imp::ExitStatus);
     | --------------------- method `as_inner` not found for this struct
     |
     = help: items from traits can only be used if the trait is implemented and in scope
note: `AsInner` defines an item `as_inner`, perhaps you need to implement it
    --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/mod.rs:62:1
     |
62   | pub trait AsInner<Inner: ?Sized> {
     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: no function or associated item named `from_inner` found for struct `ExitStatus` in the current scope
    --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/process.rs:1601:21
     |
1594 | pub struct ExitStatus(imp::ExitStatus);
     | --------------------- function or associated item `from_inner` not found for this struct
...
1601 |         ExitStatus::from_inner(imp::ExitStatus::default())
     |                     ^^^^^^^^^^ function or associated item not found in `ExitStatus`
     |
     = help: items from traits can only be used if the trait is implemented and in scope
note: `FromInner` defines an item `from_inner`, perhaps you need to implement it
    --> /home/nikarh/.local/share/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/mod.rs:80:1
     |
80   | pub trait FromInner<Inner> {
     | ^^^^^^^^^^^^^^^^^^^^^^^^^^

Some errors have detailed explanations: E0432, E0583, E0599.
For more information about an error, try `rustc --explain E0432`.
error: could not compile `std` (lib) due to 10 previous errors
Error: cargo build failed

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK