The following code will on Linux print three strings each followed by a NULL
byte:

module Main where

putStr0 = putStr $ s ++ "\0"

main = do
    putStr0 "Hello"
    putStr0 "Hello"
    putStr0 "Hello"

On Windows however it will print nothing!  In order to trigger printing I
have to change the definition of putStr0 to

putStr0 = putStr (s ++ "\0") >> hFlush stdout

Is this difference in behaviour due to a bug in GHC on Windows or just a
quirkiness of the platform?

/M
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to