Skip to content

Unboxed tuples fixes #2837

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 6 commits into from
Aug 6, 2024

Conversation

Ekdohibs
Copy link
Contributor

Unboxed tuples appearing in free variables of closures were previously failing. This PR can be tested with Ekdohibs@dcd9995 which sits on top of the unboxed tuples frontend work.
Example code that was previously failing:

type t = #(int * int)

let id_t (x : t) = x

let app f (x : t) = f x

let f y = app (fun _ -> id_t y) y

@ccasin
Copy link
Contributor

ccasin commented Jul 23, 2024

I've tested this PR on the unboxed tuples branch (see test 3 here, which passes). It will need an flambda2 reviewer, but waiting for @mshinwell's return is OK if no one is available.

@Ekdohibs
Copy link
Contributor Author

Note: I added fixes to other problems with unboxed products in lambda_to_flambda.

@Ekdohibs Ekdohibs changed the title Fix for unboxed tuples in closures Unboxed tuples fixes Jul 25, 2024
@ccasin ccasin mentioned this pull request Aug 1, 2024
@mshinwell mshinwell added flambda2 Prerequisite for, or part of, flambda2 unboxed types labels Aug 6, 2024
@mshinwell mshinwell merged commit 4190b48 into ocaml-flambda:main Aug 6, 2024
18 checks passed
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
flambda2 Prerequisite for, or part of, flambda2 unboxed types
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants