Forked from
Glasgow Haskell Compiler / GHC
47374 commits behind the upstream repository.

Duncan Coutts
authored
The main restriction is that all args and results must be unboxed types. In particular we allow unboxed tuple results (which is a primary motivation for the whole feature). The normal rules apply about "void rep" result types like State#. We only allow "prim" calling convention for import, not export. The other forms of import, "dynamic", "wrapper" and data label are banned as a conseqence of checking that the imported name is a valid C string. We currently require prim imports to be marked unsafe, though this is essentially arbitrary as the safety information is unused.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.