summaryrefslogtreecommitdiff
path: root/compiler/codeGen
diff options
context:
space:
mode:
authorDuncan Coutts <duncan@well-typed.com>2009-06-09 10:48:26 +0000
committerDuncan Coutts <duncan@well-typed.com>2009-06-09 10:48:26 +0000
commit2da37f4f15790377900fa6c38ff8fdcd394dfaa2 (patch)
tree6c16408651530568d9f60fedae2aa67565850eda /compiler/codeGen
parenta4005d2d0c18ffa72ba7bd0fa052666e70e8c16e (diff)
downloadhaskell-2da37f4f15790377900fa6c38ff8fdcd394dfaa2.tar.gz
Typechecking for "foreign import prim"
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.
Diffstat (limited to 'compiler/codeGen')
0 files changed, 0 insertions, 0 deletions