[GHC] #3341: encoding errors could be handled better

GHC trac at galois.com
Wed Jul 1 14:39:44 EDT 2009


#3341: encoding errors could be handled better
--------------------+-------------------------------------------------------
Reporter:  judahj   |          Owner:                
    Type:  bug      |         Status:  new           
Priority:  normal   |      Component:  libraries/base
 Version:  6.11     |       Severity:  normal        
Keywords:           |       Testcase:                
      Os:  MacOS X  |   Architecture:  x86           
--------------------+-------------------------------------------------------
 With the new Unicode I/O library, using the following program
 (`badchar.hs`):
 {{{
 import System.IO
 main = do
     hSetBuffering stdin NoBuffering
     getChar >> print
 }}}
 If the terminal's LANG is utf-8 but a latin-1 non-ASCII character is
 typed, then the terminal hangs and doesn't throw an error until three
 more bytes are entered.  Since `NoBuffering` is set, I'd expect the
 program to
 immediately perform error handling rather than waiting for more input.

 Furthermore, if the end of input is reached then the invalid byte is
 accepted without error.  For example, in a utf-8 terminal:
 {{{
 dhcp-19-155:tmp judah$ ghc -e "putStrLn \"\\249\"" | ./badchar
 '\249'
 }}}

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/3341>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the Glasgow-haskell-bugs mailing list