In hPutLitString, catch the empty string case before calling hPutBuf.
Some older versions of hPutBufFull choke on a zero-length buffer.
Fixes occasional problems with the Sparc native code generator, which
uses SLIT("") in a couple of places.
hPutBuf = hPutBufFull
#endif
+ -- some versions of hPutBuf will barf if the length is zero
+hPutLitString handle a# 0# = return ()
hPutLitString handle a# l#
#if __GLASGOW_HASKELL__ < 411
= hPutBuf handle (A# a#) (I# l#)