Closed
Description
The number of restrictions on this testcase are pretty bizarre:
enum StdioContainer {
CreatePipe(bool)
}
struct Test<'self> {
args: &'self [~str],
io: &'self [StdioContainer]
}
fn main() {
let test = Test {
args: [],
io: [CreatePipe(true)]
};
}
This is as reduced as I could make it. There needs to be two borrowed vectors, and one of them needs to contain ~str elements (u8 didn't work). The other needs to contain an enum variant with a constructor that's called in the initializer. The end result is an LLVM assertion for the call:
rustc: /run/media/jdm/ssd/rust/src/llvm/lib/IR/Instructions.cpp:281: void llvm::CallInst::init(llvm::Value*, llvm::ArrayRef<llvm::Value*>, const llvm::Twine&): Assertion `(i >= FTy->getNumParams() || FTy->getParamType(i) == Args[i]->getType()) && "Calling a function with a bad signature!"' failed.
Activity
cnd commentedon Nov 7, 2013
cc
alexcrichton commentedon Mar 3, 2014
This appears to work now, flagging as needstest
test: Add some tests for closed issues
auto merge of #12738 : alexcrichton/rust/needstest, r=brson,just
Auto merge of rust-lang#13090 - J-ZhengLi:issue9790, r=blyxyas