Repository : ssh://darcs.haskell.org//srv/darcs/testsuite

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/a648c9f5cf344e023a15e57c3aee9a3ca2b86593

>---------------------------------------------------------------

commit a648c9f5cf344e023a15e57c3aee9a3ca2b86593
Author: Ian Lynagh <[email protected]>
Date:   Wed Jun 27 21:49:10 2012 +0100

    Add IntegerConversionRules
    
    Includes a test for the problem in #6111.

>---------------------------------------------------------------

 tests/lib/integer/IntegerConversionRules.hs |   20 ++++++++++++++++++++
 tests/lib/integer/Makefile                  |   11 +++++++++++
 tests/lib/integer/all.T                     |    4 ++++
 3 files changed, 35 insertions(+), 0 deletions(-)

diff --git a/tests/lib/integer/IntegerConversionRules.hs 
b/tests/lib/integer/IntegerConversionRules.hs
new file mode 100644
index 0000000..cb5269f
--- /dev/null
+++ b/tests/lib/integer/IntegerConversionRules.hs
@@ -0,0 +1,20 @@
+
+module IntegerConversionRules where
+
+import Data.Word
+
+f1 :: Int -> Double
+f1 = fi
+
+f2 :: Int -> Float
+f2 = fi
+
+f3 :: Int -> Int
+f3 = fi
+
+f4 :: Int -> Word
+f4 = fi
+
+fi :: (Integral a, Num b) => a -> b
+fi = fromIntegral
+
diff --git a/tests/lib/integer/Makefile b/tests/lib/integer/Makefile
index 227362d..34d5a17 100644
--- a/tests/lib/integer/Makefile
+++ b/tests/lib/integer/Makefile
@@ -45,3 +45,14 @@ fromToInteger:
        -grep integerToWord fromToInteger.simpl
        -grep wordToInteger fromToInteger.simpl
 
+.PHONY: IntegerConversionRules
+IntegerConversionRules:
+       '$(TEST_HC)' -Wall -v0 -O -c [email protected] -fforce-recomp -ddump-simpl > 
[email protected]
+       -grep -q smallInteger      [email protected] && echo "smallInteger present"
+       -grep -q doubleFromInteger [email protected] && echo "doubleFromInteger present"
+       -grep -q int2Double        [email protected] || echo "int2Double absent"
+       -grep -q floatFromInteger  [email protected] && echo "floatFromInteger present"
+       -grep -q int2Float         [email protected] || echo "int2Float absent"
+       -grep -q integerToWord     [email protected] && echo "integerToWord present"
+       -grep -q int2Word          [email protected] || echo "int2Word absent"
+
diff --git a/tests/lib/integer/all.T b/tests/lib/integer/all.T
index 8b27753..99056d6 100644
--- a/tests/lib/integer/all.T
+++ b/tests/lib/integer/all.T
@@ -8,4 +8,8 @@ test('fromToInteger',
      extra_clean(['fromToInteger.simpl']),
      run_command,
      ['$MAKE -s --no-print-directory fromToInteger'])
+test('IntegerConversionRules',
+     extra_clean(['IntegerConversionRules.simpl']),
+     run_command,
+     ['$MAKE -s --no-print-directory IntegerConversionRules'])
 



_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to