-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Dynamic failures in analysis server during dart fix
#50553
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
Comments
CC @scheglov recent changes in switches? |
Sounds like there are at least three bugs here:
|
// @dart = 2.18
void f(Object value) {
switch (value) {
case (int a,) when a == 0:
}
} It happens because in |
I don't think it's reasonable to say that an infinite loop in the spec means that it's ok for server to crash with a stack overflow. Can we please get that fixed? @eernstg for the bug in the spec. |
See #46524 which I opened a while ago for tracking. |
https://dart-review.googlesource.com/c/sdk/+/272387 should fix the crash for |
…erns feature is disabled. Bug: #50553 Change-Id: Icd87d422ebf899d4a0d56ab4b7e476ab60949ad4 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/272387 Commit-Queue: Konstantin Shcheglov <[email protected]> Reviewed-by: Brian Wilkerson <[email protected]> Reviewed-by: Samuel Rawlins <[email protected]>
I think this is still P1 because an infinite loop can still occur just by running the simple |
I'm changing my mind on this one. The infinite loop has been around for ages, and we've only had one user report (internally, also from the language tests directory). I think this is just P2. |
I hope this is useful, even though I haven't made any attempts to create a minimal scenario. I've experienced a number of dynamic errors raised in the analysis server (2.19.0-421.0.dev) as follows. Run this command:
The current commit of the SDK repo was e7985b28e9007bc4bfc9f1e5084c1b5376617fe8 .
One example run provided this output:
The process was stuck at this point (no changes for about half an hour):
It seems like this procedure will yield many different crashes, perhaps because it will process the input libraries in a different order from time to time. Here is another one:
The text was updated successfully, but these errors were encountered: