diff --git a/ghc/lib/misc/SocketPrim.lhs b/ghc/lib/misc/SocketPrim.lhs index 23f6a4f6ac1d87d2f6934d9ca21786007bd62ed4..93a670735eb616874ddd5e02a5539f794c459d3d 100644 --- a/ghc/lib/misc/SocketPrim.lhs +++ b/ghc/lib/misc/SocketPrim.lhs @@ -278,7 +278,7 @@ bindSocket (MkSocket s _family _stype _protocol socketStatus) addr = do show currentStatus)) else do addr' <- packSockAddr addr - let (_,sz) = boundsOfByteArray addr' + let (_,sz) = boundsOfMutableByteArray addr' status <- _ccall_ bindSocket s addr' sz (isDomainSocket::Int) case (status::Int) of -1 -> constructErrorAndFail "bindSocket" @@ -313,7 +313,7 @@ connect (MkSocket s _family _stype _protocol socketStatus) addr = do show currentStatus)) else do addr' <- packSockAddr addr - let (_,sz) = boundsOfByteArray addr' + let (_,sz) = boundsOfMutableByteArray addr' status <- _ccall_ connectSocket s addr' sz (isDomainSocket::Int) case (status::Int) of -1 -> constructErrorAndFail "connect" @@ -425,7 +425,7 @@ sendTo (MkSocket s _family _stype _protocol status) xs addr = do show currentStatus)) else do addr' <- packSockAddr addr - let (_,sz) = boundsOfByteArray addr' + let (_,sz) = boundsOfMutableByteArray addr' nbytes <- _ccall_ sendTo__ s xs (length xs) addr' sz case (nbytes::Int) of -1 -> constructErrorAndFail "sendTo" @@ -1130,13 +1130,13 @@ allocSockAddr :: Family -> IO (MutableByteArray RealWorld Int, Int) #ifndef cygwin32_TARGET_OS allocSockAddr AF_UNIX = do ptr <- allocChars ``sizeof(struct sockaddr_un)'' - let (_,sz) = boundsOfByteArray ptr + let (_,sz) = boundsOfMutableByteArray ptr return (ptr, sz) #endif allocSockAddr AF_INET = do ptr <- allocChars ``sizeof(struct sockaddr_in)'' - let (_,sz) = boundsOfByteArray ptr + let (_,sz) = boundsOfMutableByteArray ptr return (ptr, sz) -------------------------------------------------------------------------------