you're probably right, this could be regarded as dead code for ghc 7.8 (esp since alex and happy must be the recent versions to even build ghc HEAD ! )


On Tue, Jan 7, 2014 at 2:25 AM, Mateusz Kowalczyk <fuuzetsu@fuuzetsu.co.uk> wrote:
Greetings,

When looking at the GHC lexer (Lexer.x), there's:

> $unispace    = \x05 -- Trick Alex into handling Unicode. See alexGetChar.
> $whitechar   = [\ \n\r\f\v $unispace]
> $white_no_nl = $whitechar # \n
> $tab         = \t

Scrolling down to alexGetChar and alexGetChar', we see the comments:


> -- backwards compatibility for Alex 2.x
> alexGetChar :: AlexInput -> Maybe (Char,AlexInput)
>
> -- This version does not squash unicode characters, it is used when
> -- lexing strings.
> alexGetChar' :: AlexInput -> Maybe (Char,AlexInput)

What's the reason for these? I was under the impression that since
3.0, Alex has natively supported unicode. Is it just dead code? Could
all the hex $uni* functions be removed? If not, why not?

--
Mateusz K.
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://www.haskell.org/mailman/listinfo/ghc-devs