[GHC] #14589: The isUpper function should return true for the '\9438' character

GHC ghc-devs at haskell.org
Sat Dec 16 10:39:36 UTC 2017


#14589: The isUpper function should return true for the '\9438' character
-------------------------------------+-------------------------------------
           Reporter:  mrkkrp         |             Owner:  (none)
               Type:  bug            |            Status:  new
           Priority:  normal         |         Milestone:
          Component:                 |           Version:  8.2.1
  libraries/base                     |
           Keywords:                 |  Operating System:  Unknown/Multiple
       Architecture:                 |   Type of failure:  None/Unknown
  Unknown/Multiple                   |
          Test Case:                 |        Blocked By:
           Blocking:                 |   Related Tickets:
Differential Rev(s):                 |         Wiki Page:
-------------------------------------+-------------------------------------
 {{{
 λ> toLower '\9438'
 '\9438'
 λ> toUpper '\9438'
 '\9412'
 λ> isUpper '\9438'
 False
 λ> isLower '\9438'
 False
 }}}

 Here we can observe a contradiction. The `toLower` function does not alter
 its argument, but `toUpper` does, which tells us that the character 1) has
 the notion of case 2) it must be lower-cased. On the other hand, both
 `isUpper` and `isLower` functions return `False` for `\9438` suggesting
 that it has no notion of case.

 Apparently, `\9438` is lower-cased and `\9412` is its upper-cased version
 indeed:

 {{{
 λ> putStrLn "\9438"
 ⓞ
 λ> putStrLn "\9412"
 Ⓞ
 }}}

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


More information about the ghc-tickets mailing list