On 12/07/2009 19:26, Bulat Ziganshin wrote:
Hello Maurí­cio,

Sunday, July 12, 2009, 9:11:53 PM, you wrote:

I did read that. It says I can use "#def" to insert
a C definition, but there are no examples of use, and I
could not find one.

#def inline int signof(int x) {return x<0?-1:x>0?1:0;}
foreign import ccall safe ""
   signof :: CInt ->  CInt

main = print (signof 33)

compilation:
hsc2hs tabi.hsc
ghc --make tabi.hs tabi_hsc.c

That use of "inline" doesn't have any effect since GHC 6.10, because even when using -fvia-C we're not #including the header file in the generated C code.

Also that note in the docs about not using #def in library code is outdated: it should be safe to use #def in libraries now. I've fixed the docs.

Cheers,
        Simon
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to