Skip to content

DDC does not build a working SDK with CFE constants flag enabled #36532

@jmesserly

Description

@jmesserly

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:

  • the SDK's internal annotations are not found. For example @nullCheck, @notNull, @JSExportName, @NoReifyGenerics, and probably other critical ones such as @JsPeerIterface.
  • static calls seem to be tagging the target with RTTI, as if it were a tearoff. As a result, we attempt to create a 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:

  • integer constants are generated as if they were doubles: 1.0 instead of 1. This is valid, but has a very slight code size/readability cost.

Metadata

Metadata

Assignees

Labels

P1A high priority bug; for example, a single project is unusable or has many test failuresweb-dev-compiler

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions