On 16 March 2005 03:54, Ian Lynagh wrote: > On Tue, Mar 15, 2005 at 10:44:28AM +0000, Ross Paterson wrote: >> On Mon, Mar 14, 2005 at 07:38:09PM -0600, John Goerzen wrote: >>> I've got some gzip (and Ian Lynagh's Inflate) code that breaks >>> under the new hugs with: >>> >>> <handle>: IO.getContents: protocol error (invalid character >>> encoding) >>> >>> What is going on, and how can I fix it? >> >> A Haskell 98 Handle is a character stream, and doesn't support binary >> I/O. This would have bitten you sooner or later on systems that do >> CRLF conversion, but Hugs is now much stricter, because character >> streams now use the encoding determined by the current locale (for >> the C locale, that means ASCII only). > > Do you have a list of functions which behave differently in the new > release to how they did in the previous release? > (I'm not interested in changes that will affect only whether something > compiles, not how it behaves given it compiles both before and after). > > Simons, Malcolm, are there any such functions in the new ghc/nhc98? > > Also, are you all agreed that the hugs interpretation of the report is > correct, and thus ghc at least is buggy in this respect? (I'm afraid I > haven't been able to test nhc98 yet).
GHC (and nhc98) assumes a locale of ISO8859-1 for I/O. You could consider that to be a bug, I suppose. We don't plan to do anything about it in the context of the current IO library, at least. Cheers, Simon