|
1 | 1 | -- | QuickCheck properties for the text library.
|
2 | 2 |
|
| 3 | +{-# LANGUAGE CPP #-} |
3 | 4 | {-# LANGUAGE BangPatterns, FlexibleInstances, OverloadedStrings,
|
4 | 5 | ScopedTypeVariables, TypeSynonymInstances #-}
|
5 | 6 | {-# OPTIONS_GHC -fno-enable-rewrite-rules -fno-warn-missing-signatures #-}
|
@@ -853,16 +854,22 @@ tb_realfloat_float (a::Float) = tb_realfloat a
|
853 | 854 | tb_realfloat_double (a::Double) = tb_realfloat a
|
854 | 855 |
|
855 | 856 | showFloat :: (RealFloat a) => TB.FPFormat -> Maybe Int -> a -> ShowS
|
856 |
| -showFloat TB.Exponent = showEFloat |
857 |
| -showFloat TB.Fixed = showFFloat |
858 |
| -showFloat TB.Generic = showGFloat |
| 857 | +showFloat TB.Exponent (Just 0) = showEFloat (Just 1) -- see gh-231 |
| 858 | +showFloat TB.Exponent p = showEFloat p |
| 859 | +showFloat TB.Fixed p = showFFloat p |
| 860 | +showFloat TB.Generic p = showGFloat p |
859 | 861 |
|
860 | 862 | tb_formatRealFloat :: (RealFloat a, Show a) =>
|
861 | 863 | a -> TB.FPFormat -> Precision a -> Property
|
862 |
| -tb_formatRealFloat a fmt prec = |
| 864 | +tb_formatRealFloat a fmt prec = cond ==> |
863 | 865 | TB.formatRealFloat fmt p a ===
|
864 | 866 | TB.fromString (showFloat fmt p a "")
|
865 | 867 | where p = precision a prec
|
| 868 | + cond = case (p,fmt) of |
| 869 | +#if MIN_VERSION_base(4,12,0) |
| 870 | + (Just 0, TB.Generic) -> False -- skipping due to gh-231 |
| 871 | +#endif |
| 872 | + _ -> True |
866 | 873 |
|
867 | 874 | tb_formatRealFloat_float (a::Float) = tb_formatRealFloat a
|
868 | 875 | tb_formatRealFloat_double (a::Double) = tb_formatRealFloat a
|
|
0 commit comments