Closed reem closed 9 years ago
This is fixed in iron/master, but reproducible in https://github.com/reem/iron/tree/feat/taskpool HEAD.
Narrowing the code led to this:
Actual code from the feat/taskpool branch, src/iron.rs, lines 123-125:
// Dispatch the request
let res = handler.call(&mut req).map_err(|e| {
handler.catch(&mut req, e)
});
ICES:
let res = handler.call(&mut req);
Fine:
let res: IronResult<Response> = fail!():
Potentially a duplicate of https://github.com/rust-lang/rust/issues/17810.
This is currently holding back a PR that improves Iron's performance by 80%. I'd be willing to pursue a fix if somebody pointed me in the wrong direction, as I'd really like to land this change.
I checked again just now and this actually appears to be fixed! Joyful times!
This:
compiles fine, but:
ICEs with:
I tried to debug this with @eddyb on IRC a few days ago, but haven't been able to make any progress.