You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
rustc: /build/rust-git/src/rust/src/llvm/lib/IR/Instructions.cpp:276: void llvm::CallInst::init(llvm::Value*, llvm::ArrayRef<llvm::Value*>, const llvm::Twine&): Assertion `(Args.size() == FTy->getNumParams() || (FTy->isVarArg() && Args.size() > FTy->getNumParams())) && "Calling a function with bad signature!"' failed.
or, more crazily:
#[no_std];#[lang="start"]mod a {}#[main]fnmain(){}
which "just" ICEs:
error: internal compiler error: node_id_to_type: no type for node `mod a (id=2)`
This message reflects a bug in the Rust compiler.
We would appreciate a bug report: https://github.com/mozilla/rust/wiki/HOWTO-submit-a-Rust-bug-report
task 'rustc' failed at 'explicit failure', /build/rust-git/src/rust/src/libsyntax/diagnostic.rs:102
task '<main>' failed at 'explicit failure', /build/rust-git/src/rust/src/librustc/lib.rs:395
Language items are the interface between the compiler and the language. They need to be well-defined and verified for correctness.
The text was updated successfully, but these errors were encountered:
The compiler never checks that the language item it receives is of the correct type or signature. This leads to craziness like:
or, more benignly:
which just plain asserts:
or, more crazily:
which "just" ICEs:
Language items are the interface between the compiler and the language. They need to be well-defined and verified for correctness.
The text was updated successfully, but these errors were encountered: