-
Notifications
You must be signed in to change notification settings - Fork 12.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ICE when using Iron::listen. #18047
Comments
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 #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! |
…k, r=Veykril Skip checks for cast to dyn traits It seems that chalk fails to solve some obvious goals when there are some recursiveness in trait environments. And it doesn't support trait upcasting yet. rust-lang/chalk#796 This PR just skips for casting into types containing `dyn Trait` to prevent false positive diagnostics like rust-lang#18047 and rust-lang#18083
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.
The text was updated successfully, but these errors were encountered: