-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
DDC does not build a working SDK with CFE constants flag enabled #36532
Comments
I found a serious perf issue: #36535. My hope is that it isn't bad enough to require a fix in 2.3 |
Once it passes, we can pull out the "pkg/dev_compiler" fixes into a CL and submit that separately. But for now I've merged it with the patches in #36479 so I can test how DDC is doing. |
@jmesserly - I just added the 2.3 milestone, I assume this is necessary before we ship, correct? |
ah, thank you. I meant to put it in 2.3, yup. |
I'm now testing a fix here: https://dart-review.googlesource.com/c/sdk/+/98927 Once DDC is green, I can pull out the DDC changes. It also includes a 1-liner CFE fix for #36545 |
I uploaded a few more workarounds:
I'm dry-running now. I think those will fix most/all of the remaining test failures. |
Last night's test run found a few more issues. Based on local testing, I believe those are now fixed, so I made a CL that is DDC-only. https://dart-review.googlesource.com/c/sdk/+/99240. I'm also doing another test run on the above CL that contains the code to flip the flag. |
The CL passed on both with and without the constants flag globally enabled (other than 2 co19 tests that are failing on other platforms too w/ constants flag, so not a DDC issue). I've sent it out for review. |
@jmesserly - just saw that your CL landed, woohoo! Is it safe to close this issue at this time? |
Use the instructions and patches here to enable the constants flag: #36479
DDC's Kernel-backend compiled SDK will not load. I've found a few issues so far:
@nullCheck
,@notNull
,@JSExportName
,@NoReifyGenerics
, and probably other critical ones such as@JsPeerIterface
.dart.FunctionType
before it has been defined. This might partly be an issue with@ReifyFunctionTypes
, but even so, we should not be reifying in these cases as it is unnecessary. We'll need to double check that this works properly for user code.Also a few minor/trivial issues (not P1) such as:
1.0
instead of1
. This is valid, but has a very slight code size/readability cost.The text was updated successfully, but these errors were encountered: