Add missing calling conventions to Template Haskell
Template Haskell only supports the CCall
and StdCall
calling conventions, while GHC supports more:
CApiConv
, PrimCallConv
and JavaScriptCallConv
are missing, and I think they should just be added unless this is expected to lead to problems.
I'd personally like to have JavaScriptCallConv
so I can remove the horrible hacks to make ghcjs-ffiqq (https://github.com/ghcjs/ghcjs-ffiqq) work. I imagine that PrimCallConv
would be useful for a package using a similar approach for high performance inline assembly or LLVM with quasiquotes.
A small change in GHC required to convert the new constructors, and possibly to check if the required extension is enabled.
Trac metadata
Trac field | Value |
---|---|
Version | 7.9 |
Type | FeatureRequest |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Core Libraries |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | core-libraries-committee@haskell.org |
Operating system | |
Architecture |