
21 Jan
2021
21 Jan
'21
4:02 a.m.
On Jan 21, 2021, at 1:39 AM, chessai
wrote: On Wed, Jan 20, 2021, 17:01 Viktor Dukhovni
wrote: On Wed, Jan 20, 2021 at 09:54:30AM -0800, chessai wrote:
I've wanted the following before:
foreign import ccall unsafe "strlen" cstringLength# :: Addr# -> Int#
cstringLength :: CString -> Int cstringLength (Ptr s) = I# (cstringLength# s)
A natural place for this seems to be Foreign.C.String.
Why a new FFI call, rather than `cstringLength#` from ghc-prim: GHC.CString (as of GHC 9.0.1):
I forgot about that addition. In that case we would just need the lifted wrapper
No worries, sure the lifted wrapper makes sense, and Foreign.C.String does look like a reasonable place in which to define, and from which to export it. -- Viktor.