rust-lang / rust

Empowering everyone to build reliable and efficient software.
https://www.rust-lang.org
Other
97.41k stars 12.59k forks source link

ICE on nightly arm compiling proc-macro2 #52862

Closed ZoeyR closed 1 year ago

ZoeyR commented 6 years ago

Hi, I found this when trying to cargo install cargo-web on my raspberry pi. Looks like there is an ICE when compiling the proc-macro2 crate.

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Utf8Error { valid_up_to: 1, error_len: Some(1) }', libcore/result.rs:945:5
note: Run with `RUST_BACKTRACE=1` for a backtrace.

error: internal compiler error: unexpected panic

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports

note: rustc 1.29.0-nightly (866a71325 2018-07-29) running on armv7-unknown-linux-gnueabihf

note: compiler flags: -C opt-level=3 --crate-type lib

note: some of the compiler flags provided by cargo are hidden

The proc macro version is 0.4.9

Edit: I also get the same error when compiling pear_codegen Edit2: I grabbed a backtrace of the pear_codegen failure since it was quicker to reproduce on my slow machine:

Compiling pear_codegen v0.0.19
   Compiling toml v0.4.6
   Compiling rayon-core v1.4.1
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Utf8Error { valid_up_to: 1, error_len: Some(1) }', libcore/result.rs:945:5
stack backtrace:
   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
             at libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1: std::sys_common::backtrace::print
             at libstd/sys_common/backtrace.rs:71
             at libstd/sys_common/backtrace.rs:59
   2: std::panicking::default_hook::{{closure}}
             at libstd/panicking.rs:211
   3: std::panicking::default_hook
             at libstd/panicking.rs:227
   4: rustc::util::common::panic_hook
   5: std::panicking::rust_panic_with_hook
             at libstd/panicking.rs:479
   6: std::panicking::continue_panic_fmt
             at libstd/panicking.rs:390
   7: rust_begin_unwind
             at libstd/panicking.rs:325
   8: core::panicking::panic_fmt
             at libcore/panicking.rs:77
   9: core::result::unwrap_failed
  10: rustc_metadata::decoder::__ty_decoder_impl::<impl serialize::serialize::Decoder for rustc_metadata::decoder::DecodeContext<'a, 'tcx>>::read_str
  11: <syntax_pos::symbol::Symbol as serialize::serialize::Decodable>::decode
  12: <rustc_metadata::schema::CrateRoot as serialize::serialize::Decodable>::decode::{{closure}}
  13: rustc_metadata::decoder::<impl rustc_metadata::schema::Lazy<T>>::decode
  14: rustc_metadata::decoder::<impl rustc_metadata::cstore::MetadataBlob>::get_root
  15: rustc_metadata::locator::Context::extract_one
  16: rustc_metadata::locator::Context::find_library_crate
  17: rustc_metadata::locator::Context::maybe_load_library_crate
  18: rustc_metadata::creader::CrateLoader::load
  19: rustc_metadata::creader::CrateLoader::resolve_crate
  20: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &'a mut F>::call_once
  21: <alloc::vec::Vec<T> as alloc::vec::SpecExtend<T, I>>::from_iter
  22: rustc_metadata::creader::CrateLoader::resolve_crate
  23: <rustc_metadata::creader::CrateLoader<'a> as rustc::middle::cstore::CrateLoader>::process_extern_crate
  24: rustc_resolve::build_reduced_graph::<impl rustc_resolve::Resolver<'a>>::build_reduced_graph_for_item
  25: <rustc_resolve::build_reduced_graph::BuildReducedGraphVisitor<'a, 'b> as syntax::visit::Visitor<'a>>::visit_item
  26: syntax::visit::walk_item
  27: <rustc_resolve::build_reduced_graph::BuildReducedGraphVisitor<'a, 'b> as syntax::visit::Visitor<'a>>::visit_item
  28: syntax::ext::expand::AstFragment::visit_with
  29: rustc_resolve::macros::<impl syntax::ext::base::Resolver for rustc_resolve::Resolver<'a>>::visit_ast_fragment_with_placeholders
  30: syntax::ext::expand::MacroExpander::collect_invocations
  31: syntax::ext::expand::MacroExpander::expand_fragment
  32: syntax::ext::expand::MacroExpander::expand_crate
  33: rustc_driver::driver::phase_2_configure_and_expand_inner::{{closure}}
  34: rustc::util::common::time
  35: rustc_driver::driver::phase_2_configure_and_expand
  36: rustc_driver::driver::compile_input
  37: rustc_driver::run_compiler_with_pool
  38: <scoped_tls::ScopedKey<T>>::set
  39: <scoped_tls::ScopedKey<T>>::set
  40: syntax::with_globals
  41: <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
  42: __rust_maybe_catch_panic
             at libpanic_unwind/lib.rs:105
  43: rustc_driver::run
  44: rustc_driver::main
  45: std::rt::lang_start::{{closure}}
  46: std::panicking::try::do_call
             at libstd/rt.rs:59
             at libstd/panicking.rs:310
  47: __rust_maybe_catch_panic
             at libpanic_unwind/lib.rs:105
  48: std::rt::lang_start_internal
             at libstd/panicking.rs:289
             at libstd/panic.rs:392
             at libstd/rt.rs:58
  49: main
  50: __libc_start_main
query stack during panic:
end of query stack
Centril commented 4 years ago

@ZoeyR Do you think you could produce a minimal reproducer?

Noratrieb commented 1 year ago

I cannot reproduce the issue. Closing as unactionable. If you encounter new bugs feel free to open new issues.