Skip to content

ICE compiling stage2 libcore, when building with LLVM-3.5 #21620

Closed
@lucab

Description

@lucab

When building with (system-installed) LLVM 3.5, the following assertion is triggered in libstd/hash.
This ICE recently surfaced after PR #21588. However, it looks like somebody already experienced it in #2235.

$ make
cfg: build triple x86_64-unknown-linux-gnu
cfg: host triples x86_64-unknown-linux-gnu
cfg: target triples x86_64-unknown-linux-gnu
cfg: enabling more debugging (CFG_ENABLE_DEBUG)
cfg: host for x86_64-unknown-linux-gnu is x86_64
cfg: os for x86_64-unknown-linux-gnu is unknown-linux-gnu
cfg: good valgrind for x86_64-unknown-linux-gnu is 1
cfg: using CC=gcc (CFG_CC)
cfg: enabling valgrind run-pass tests (CFG_ENABLE_VALGRIND_RPASS)
rustc: x86_64-unknown-linux-gnu/stage1/lib/rustlib/x86_64-unknown-linux-gnu/bin/rustdoc
cp: x86_64-unknown-linux-gnu/stage2/lib/librustdoc
cp: x86_64-unknown-linux-gnu/stage2/bin/rustdoc
rustc: x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore
/home/lbruno/src/upstream/rust/src/libcore/lib.rs:67:12: 67:26 warning: feature is deprecated and will only be available for a limited time, please rewrite code that relies on it
/home/lbruno/src/upstream/rust/src/libcore/lib.rs:67 #![feature(old_impl_check)]
                                                                ^~~~~~~~~~~~~~
/home/lbruno/src/upstream/rust/src/libcore/lib.rs:67:12: 67:26 warning: feature is deprecated and will only be available for a limited time, please rewrite code that relies on it
/home/lbruno/src/upstream/rust/src/libcore/lib.rs:67 #![feature(old_impl_check)]
                                                                ^~~~~~~~~~~~~~
error: internal compiler error: unexpected panic
note: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: http://doc.rust-lang.org/complement-bugreport.html
note: run with `RUST_BACKTRACE=1` for a backtrace
thread 'rustc' panicked at 'assertion failed: self.raw.hash != self.hashes_end', /home/lbruno/src/upstream/rust/src/libstd/collections/hash/table.rs:773

stack backtrace:
   1:     0x7f08410b10d0 - sys::backtrace::write::h7de15137e855e83cSZt
   2:     0x7f08410d46d0 - failure::on_fail::h4da67e6a3668b239LdA
   3:     0x7f084103f250 - rt::unwind::begin_unwind_inner::h4bd6f5432ad47c00MSz
   4:     0x7f08404aa060 - rt::unwind::begin_unwind::h2320400940752561500
   5:     0x7f08404d15d0 - std..collections..hash..table..RawTable<syntax..ast..Name, (*>::glue_drop.15213::h030c3ec61502adc2
   6:     0x7f08404e4de0 - std..collections..hash..table..RawTable<u32, std..collections..hash..set..HashSet<u32, std..collections..hash..state..DefaultState<rustc..util..nodemap..FnvHasher>>>::glue_drop.15492::h6fcebb91da1f811c
   7:     0x7f084051d520 - Resolver::glue_drop.16400::h8fc30f1baa57af04                                                                                    
   8:     0x7f084051cdf0 - resolve_crate::hbba1f75a4c654450sDi                                                                                             
   9:     0x7f0841623cd0 - driver::phase_3_run_analysis_passes::hdbd523b0dece3c48VFa                                                                       
  10:     0x7f084160bcf0 - driver::compile_input::h36e27867556156cbBba                                                                                     
  11:     0x7f08416d4c80 - run_compiler::hd967642577394639R8b                                                                                              
  12:     0x7f08416d33f0 - thunk::F.Invoke<A, R>::invoke::h4176026213811984                                                                                
  13:     0x7f08416d22f0 - rt::unwind::try::try_fn::h12294395349683804038
  14:     0x7f0841149850 - rust_try_inner
  15:     0x7f0841149840 - rust_try
  16:     0x7f08416d25a0 - thunk::F.Invoke<A, R>::invoke::h18028537340176081056
  17:     0x7f08410c20f0 - sys::thread::thread_start::h9e40879762be7137aPw
  18:     0x7f083bd3cfe0 - start_thread
  19:     0x7f0840ccac99 - __clone
  20:                0x0 - <unknown>

/home/lbruno/src/upstream/rust/mk/target.mk:165: recipe for target 'x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib/stamp.core' failed
make: *** [x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib/stamp.core] Error 101

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions