ocaml-flambda / flambda-backend

The Flambda backend project for OCaml
92 stars 65 forks source link

Implement `'a or_null` #2749

Open dkalinichenko-js opened 4 days ago

dkalinichenko-js commented 4 days ago

Do not update the jkind in update_decl_jkind if the manifest is available; always copy the manifest's jkind in check_coherence. This allows us to give types like 'a or_null non-standard jkinds for their kinds (i.e. value_or_null for Type_variant).

Pre-define or_null when Layouts has level Alpha. Add tests for or_null.

or_null will be added to stdlib_alpha in the next PR.