(imported from improperly closed bug #18358) ``` rust #![allow(dead_code)] pub mod x { #[no_mangle] pub fn f() { } } pub mod y { #[no_mangle] pub fn f(_: i32) { } } fn main() { } ``` [playpen](http://is.gd/SCMl71) This crashes with: ``` rustc: /home/rustbuild/src/rust-buildbot/slave/nightly-dist-rustc-linux/build/src/llvm/include/llvm/Support/Casting.h:237: typename llvm::cast_retty<X, Y*>::ret_type llvm::cast(Y*) [with X = llvm::Function; Y = llvm::Value; typename llvm::cast_retty<X, Y*>::ret_type = llvm::Function*]: Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed. Aborted (core dumped) playpen: application terminated with error code 134 Program ended. ``` (I don't know what it does if one compiles about LLVM assertions turned on.)