-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Implement generic function type syntax in the analyzer #27969
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
Moving to 1.22 for implementation, informal spec i linked from the meta-issue #27527 |
@bwilkerson is cranking on it |
@bwilkerson I'm happy to take a look at continuing this one through resolution (I noticed you already landed the parser/AST support?) |
Yes, the parser/AST support is in, but there is a flag in the parser that disables it. We can't re-enable it until 1.22 has built, which will make it hard to test any resolution work. That said, I'm happy to let you finish the work. I had already started working on resolution when we decided to move the support from 1.22 to 1.23, and I've sent you a CL with what I'd gotten done. |
The branch is open for 1.23, so would be good to get this one moving again! |
Yep. The next step was committed yesterday, but had to be temporarily reverted because of a problem with the way dartk was being built. I believe that's been fixed, so I'm planning on re-landing it today. |
@bwilkerson was this landed? |
Unfortunately, no. It is requiring more effort than I had originally anticipated. |
Any further updates? Is this likely to make it for 1.23? |
I have a CL that I will commit in the morning that gets the shared tests to pass. At that point I'll probably consider this issue to be closed, and we can open individual issues as we discover specific cases that aren't yet working. |
Not all the tests are passing; I missed the ones in language-strong. Will look at those today. |
I was wrong, all of the tests I know of related to generic function types appear to be passing. (The others were related to generic methods and my changes happened to have fixed a couple of those cases.) Hence, I'm going to close this and expect to see other issues opened as specific problems are discovered. |
The analyzer still crashes on the generated tests. Try to patch in https://codereview.chromium.org/2707033004 to have more tests. |
Are the generated tests not run on the bots? |
Not yet. |
When I visit the cl (https://codereview.chromium.org/2707033004) it says "(Patch set is too large to download)". Is there another way for me to get the tests? |
git cl patch 2707033004 seems to work. |
#29360 is being merged. Anything else we need, or can we close this one? |
The analyzer passes all known tests, including the generated tests. I'm going to close this and request that any newly discovered deficiencies of the implementation be opened as new issues and not be assigned to the 1.23 milestone. |
This is the analyzer-implementation issue for #27527.
At the moment we only really need the new syntax in typedefs. Eventually, we want to make this syntax usable for fields and locals, but it's not yet as high a priority. If you find the time to make it work there too, please guard it behind a (different) flag.
The text was updated successfully, but these errors were encountered: