diff options
| author | Max Bolingbroke <batterseapower@hotmail.com> | 2011-05-15 19:36:41 +0100 |
|---|---|---|
| committer | Max Bolingbroke <batterseapower@hotmail.com> | 2011-05-15 19:36:52 +0100 |
| commit | 6ddfe9b18d4d280676aab2fa797ddbe6f8a09d6b (patch) | |
| tree | 4da828842a9a87a48073fcc56b3af7028c3d0f66 /compiler/parser | |
| parent | 3391a03562d4056de7b16cd0f632e6c43ae44cca (diff) | |
| download | haskell-6ddfe9b18d4d280676aab2fa797ddbe6f8a09d6b.tar.gz | |
Use FractionalLit more extensively to improve other pretty printers
Diffstat (limited to 'compiler/parser')
| -rw-r--r-- | compiler/parser/Lexer.x | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/compiler/parser/Lexer.x b/compiler/parser/Lexer.x index 27424323c6..b20d2c011c 100644 --- a/compiler/parser/Lexer.x +++ b/compiler/parser/Lexer.x @@ -547,8 +547,8 @@ data Token | ITprimstring FastString | ITprimint Integer | ITprimword Integer - | ITprimfloat Rational - | ITprimdouble Rational + | ITprimfloat FractionalLit + | ITprimdouble FractionalLit -- Template Haskell extension tokens | ITopenExpQuote -- [| or [e| @@ -1061,9 +1061,12 @@ hexadecimal = (16,hexDigit) -- readRational can understand negative rationals, exponents, everything. tok_float, tok_primfloat, tok_primdouble :: String -> Token -tok_float str = ITrational $! FL { fl_text = str, fl_value = readRational str } -tok_primfloat str = ITprimfloat $! readRational str -tok_primdouble str = ITprimdouble $! readRational str +tok_float str = ITrational $! readFractionalLit str +tok_primfloat str = ITprimfloat $! readFractionalLit str +tok_primdouble str = ITprimdouble $! readFractionalLit str + +readFractionalLit :: String -> FractionalLit +readFractionalLit str = (FL $! str) $! readRational str -- ----------------------------------------------------------------------------- -- Layout processing |
