Skip to content

ICE: empty struct + extern function on 32-bit OS #16441

Closed
@klutzy

Description

@klutzy
#![crate_type = "lib"]
#![no_std]

struct Empty;
extern "C" fn ice(_a: Empty) {}

with --target=i686-unknown-linux-gnu or --target=i686-pc-mingw32:

task 'rustc' failed at 'assertion failed: index < LLVMCountParams(llfn)',
/path/to/rust/src/librustc_llvm/lib.rs:2041

stack backtrace:
   1:     0x7f0ae672fe70 - rt::backtrace::imp::write::h43dac5486f5e7461t9p
   2:     0x7f0ae6732f10 - failure::on_fail::h1e234ec252bd138bGuq
   3:     0x7f0ae6ef5a60 - unwind::begin_unwind_inner::h84cc9a0765812e46M8d
   4:     0x7f0ae6ef5750 - unwind::begin_unwind_fmt::h5294fb1154f645ceh6d
   5:     0x7f0ae3604670 - get_param::h6626c97fe8bc39e4rnc
   6:     0x7f0ae7698af0 - middle::trans::foreign::trans_rust_fn_with_foreign_abi::hc91c30d50c9f14e9nil
   7:     0x7f0ae7689820 - middle::trans::base::trans_item::h5d5ded2b8a3e87b4Fhd
   8:     0x7f0ae7755770 - middle::trans::base::trans_crate::h4ac87b78eadb9f067be
   9:     0x7f0ae7b6c440 - driver::driver::phase_4_translate_to_llvm::hacd93d74c4c452e1wCw
...

This causes #15811. (cc jeremyletang/rgtk#26)

Metadata

Metadata

Assignees

No one assigned

    Labels

    I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️O-x86_32Target: x86 processors, 32 bit (like i686-*) (IA-32)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions