summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
cbbee4e)
The safe/unsafe annotation doesn't currently mean anything for prim.
Just in case we decide it means something later it's better to stick
to using one or the other consistently. We decided that using safe
is the better one to require (and it's also the default).
| cconv == PrimCallConv = do
checkCg (checkCOrAsmOrDotNetOrInterp)
checkCTarget target
| cconv == PrimCallConv = do
checkCg (checkCOrAsmOrDotNetOrInterp)
checkCTarget target
- check (safety == PlayRisky)
- (text "A `foreign import prim' must always be annotated as `unsafe'")
+ check (playSafe safety)
+ (text "The safe/unsafe annotation should not be used with `foreign import prim'.")
dflags <- getDOpts
checkForeignArgs (isFFIPrimArgumentTy dflags) arg_tys
-- prim import result is more liberal, allows (#,,#)
dflags <- getDOpts
checkForeignArgs (isFFIPrimArgumentTy dflags) arg_tys
-- prim import result is more liberal, allows (#,,#)