-
Notifications
You must be signed in to change notification settings - Fork 13k
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
[nll] compiler spinning forever #49936
Comments
cc @rust-lang/wg-compiler-nll |
I also have this error, the compiler is in an infinity loop.. |
(its possible that its "just" quadratic or even exponential growth rather than a true infinite loop. But in any case the user experience is not acceptable.) It would be useful to determine if this is due to the known slowness that only occurs during error reporting (e.g. #49998) or if this is the other known slowness of the NLL algorithm in general. See also #47879 It would also be useful to reduce the given test case down into something standalone and preferably minimal. |
Minor detail: I believe the title of this issue should say 'forever' instead of 'for every'. |
I may have just ran into the same issue with this code: https://play.rust-lang.org/?gist=4844db817a69c8a222e037d728ec58cc&version=nightly&mode=debug |
The root cause (PartialOrd being exponential) is fixed and I confirm @CryZe's case is compiling quickly on the playground. Can you verify if this is still an issue? |
Mine errors now instead, which I'm not entirely sure it should be erroring. So while it doesn't spin endlessly anymore, it doesn't seem to work either. (So maybe it's a bug that just hides the spinning forever bug) |
dev env:
code like this:
and then run
RUST_LOG=logger=info co watch -x run
, then the compiler keep running, It seams will not finish the compile, and my cups are almost full-load. after a while, my Iterm2 into no response mode.after change this line
fs.iter() // BUG?: focus on this line.
tofs.into_iter() // BUG?: focus on this line.
compiler restored to normal.The text was updated successfully, but these errors were encountered: