Skip to content

Staged compilation for unsafePerformIO #58

@zliu41

Description

@zliu41

When external functions (such as ad) uses unsafePerformIO, currently one viable way to circumvent the blocking categorization situation is to wrap the function and inline the result of the function before categorization. This can be only applicable for functions that generates expression, not values, but in old code generation, unsafePerformIO is also only available only for generating phase functions, so this should be compatible with our approach.

Acceptance Criteria:

  • Make some smaller target to focus on unsafePerformIO problem.
  • Create wrapper generator for such external functions
  • Apply it to ad case
  • Make H&G target buildable (since this is the last problem of its categorization)

(Extricated from https://kitty-hawk.atlassian.net/browse/SW-3432)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions