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

cargo clean panics on a project with cbindgen #47

Open
asomers opened this issue Apr 20, 2020 · 0 comments
Open

cargo clean panics on a project with cbindgen #47

asomers opened this issue Apr 20, 2020 · 0 comments

Comments

@asomers
Copy link

asomers commented Apr 20, 2020

The combination of cargo-kcov and cbindgen triggers a panic in Cargo. I've reproduced it on both FreeBSD 11.3 and Debian 10.3, with a few different versions of cargo nightly. To reproduce, create a blank crate. Fill Cargo.toml with this:

[package]
name = "cargo-kcov-crash"
version = "0.1.0"

[build-dependencies]
cbindgen = "0.14.0"

and create a blank build.rs like this:

fn main() { }

Then invoke cargo like this:

$ env RUST_BACKTRACE=1 cargo +nightly kcov -v
       Clean file:///usr/home/somers/src/rust/cargo-kcov-crash#0.1.0

error: cargo subcommand failure
note: cargo clean exited with code exit code: 101
thread 'main' panicked at 'assertion failed: self.host', src/tools/cargo/src/cargo/core/profiles.rs:940:13
stack backtrace:
   0: backtrace::backtrace::libunwind::trace
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86
   1: backtrace::backtrace::trace_unsynchronized
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66
   2: std::sys_common::backtrace::_print_fmt
             at src/libstd/sys_common/backtrace.rs:78
   3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
             at src/libstd/sys_common/backtrace.rs:59
   4: core::fmt::write
             at src/libcore/fmt/mod.rs:1069
   5: std::io::Write::write_fmt
             at src/libstd/io/mod.rs:1504
   6: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:62
   7: std::sys_common::backtrace::print
             at src/libstd/sys_common/backtrace.rs:49
   8: std::panicking::default_hook::{{closure}}
             at src/libstd/panicking.rs:198
   9: std::panicking::default_hook
             at src/libstd/panicking.rs:218
  10: std::panicking::rust_panic_with_hook
             at src/libstd/panicking.rs:511
  11: std::panicking::begin_panic
  12: cargo::core::compiler::unit_dependencies::compute_deps
  13: cargo::core::compiler::unit_dependencies::deps_of
  14: cargo::core::compiler::unit_dependencies::deps_of_roots
  15: cargo::core::compiler::unit_dependencies::build_unit_dependencies
  16: cargo::ops::cargo_clean::clean
  17: cargo::commands::clean::exec
  18: cargo::cli::main
  19: cargo::main
  20: std::rt::lang_start::{{closure}}
  21: std::rt::lang_start_internal::{{closure}}
             at src/libstd/rt.rs:52
  22: std::panicking::try::do_call
             at src/libstd/panicking.rs:331
  23: std::panicking::try
             at src/libstd/panicking.rs:274
  24: std::panic::catch_unwind
             at src/libstd/panic.rs:394
  25: std::rt::lang_start_internal
             at src/libstd/rt.rs:51
  26: main
  27: _start
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant