|
RE: ghc's hPutBuf doesn't obey the buffering mode: msg#00085lang.haskell.glasgow.bugs
On 15 April 2005 02:39, Ian Lynagh wrote: > If I run this program: > > -------------------------------------------------- > import System.Cmd (system) > import Foreign.C.String (castCharToCChar) > import Foreign.Marshal.Array (newArray) > import System.IO (hSetBinaryMode, hPutBuf, stdout, hSetBuffering, > BufferMode(..)) > > main = do hSetBinaryMode stdout True > hSetBuffering stdout LineBuffering > p <- newArray (map castCharToCChar "foo\n") > hPutBuf stdout p 4 > system "sleep 5" > putStr "bar\n" > -------------------------------------------------- > > compiled by GHC then it waits 5 seconds and then prints foo and bar > together. > > With hugs, foo is printed and then 5 seconds later bar is printed, as > I would expect. True, the implementation doesn't respect LineBuffering (though it does respect the other buffering modes, I believe). That's a bug. Cheers, Simon
|
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: environment variables for ghc, Frederik Eaton |
|---|---|
| Next by Date: | [ ghc-Bugs-1184340 ] Incorrect Type Inference?, SourceForge.net |
| Previous by Thread: | ghc's hPutBuf doesn't obey the buffering mode, Ian Lynagh |
| Next by Thread: | RE: Bus Error with ghc 6.4 on Solaris, Simon Peyton-Jones |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |