[GHC] #10412: isAlphaNum includes mark characters, but neither isAlpha nor isNumber do

GHC ghc-devs at haskell.org
Wed May 13 13:58:32 UTC 2015


#10412: isAlphaNum includes mark characters, but neither isAlpha nor isNumber do
-------------------------------------+-------------------------------------
              Reporter:              |             Owner:
  Artyom.Kazak                       |            Status:  new
                  Type:  bug         |         Milestone:
              Priority:  normal      |           Version:  7.10.1
             Component:              |  Operating System:  Unknown/Multiple
  libraries/base                     |   Type of failure:  None/Unknown
              Keywords:  unicode     |        Blocked By:
          Architecture:              |   Related Tickets:
  Unknown/Multiple                   |
             Test Case:              |
              Blocking:              |
Differential Revisions:              |
-------------------------------------+-------------------------------------
 {{{#!hs
 > isMark '\768'
 True

 > isAlphaNum '\768'
 True

 > (isAlpha '\768', isNumber '\768')
 (False,False)
 }}}

 This behavior comes from this piece in WCsubst.c:

 {{{
 unipred(u_iswalnum,(GENCAT_LT|GENCAT_LU|GENCAT_LL|GENCAT_LM|GENCAT_LO|
                     GENCAT_MC|GENCAT_ME|GENCAT_MN|
                     GENCAT_NO|GENCAT_ND|GENCAT_NL))
 }}}

 I'm not sure what should be done here. Is it a bug with isAlpaNum? Or with
 isAlpha? How does it correspond to iswalnum's behavior in C++?

 (And if it's a feature and not a bug, then it should definitely be
 documented.)

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


More information about the ghc-tickets mailing list