diff options
author | Richard Eisenberg <eir@seas.upenn.edu> | 2013-08-28 12:05:03 -0400 |
---|---|---|
committer | Richard Eisenberg <eir@cis.upenn.edu> | 2013-09-17 21:41:53 -0400 |
commit | 1e3ca733694f0c9c8cc1d95237eb4b09cee4206f (patch) | |
tree | 73f31ae153ac841d0f8499b5edd98075881bdec4 /testsuite/tests/deriving | |
parent | b4ab30d54540573fbda3f561377d2c5968eb215c (diff) | |
download | haskell-1e3ca733694f0c9c8cc1d95237eb4b09cee4206f.tar.gz |
Update to tests due to change in syntax for role annotations.
Diffstat (limited to 'testsuite/tests/deriving')
29 files changed, 0 insertions, 360 deletions
diff --git a/testsuite/tests/deriving/should_compile/Roles1.hs b/testsuite/tests/deriving/should_compile/Roles1.hs deleted file mode 100644 index d0467c1a90..0000000000 --- a/testsuite/tests/deriving/should_compile/Roles1.hs +++ /dev/null @@ -1,13 +0,0 @@ -{-# LANGUAGE RoleAnnotations, PolyKinds #-} - -module Roles1 where - -data T1 a@N = K1 a -data T2 a@R = K2 a -data T3 (a :: k)@P = K3 -data T4 (a :: * -> *)@N b = K4 (a b) - -data T5 a = K5 a -data T6 a = K6 -data T7 a b = K7 b - diff --git a/testsuite/tests/deriving/should_compile/Roles1.stderr b/testsuite/tests/deriving/should_compile/Roles1.stderr deleted file mode 100644 index 10edab13ef..0000000000 --- a/testsuite/tests/deriving/should_compile/Roles1.stderr +++ /dev/null @@ -1,50 +0,0 @@ -TYPE SIGNATURES -TYPE CONSTRUCTORS - T1 :: * -> * - data T1 a@N - No C type associated - RecFlag NonRecursive, Promotable - = K1 :: forall a. a -> T1 a Stricts: _ - FamilyInstance: none - T2 :: * -> * - data T2 a@R - No C type associated - RecFlag NonRecursive, Promotable - = K2 :: forall a. a -> T2 a Stricts: _ - FamilyInstance: none - T3 :: forall (k :: BOX). k -> * - data T3 (k::BOX)@N (a::k)@P - No C type associated - RecFlag NonRecursive, Not promotable - = K3 :: forall (k::BOX) (a::k). T3 k a - FamilyInstance: none - T4 :: (* -> *) -> * -> * - data T4 (a::* -> *)@N b@N - No C type associated - RecFlag NonRecursive, Not promotable - = K4 :: forall (a::* -> *) b. (a b) -> T4 a b Stricts: _ - FamilyInstance: none - T5 :: * -> * - data T5 a@R - No C type associated - RecFlag NonRecursive, Promotable - = K5 :: forall a. a -> T5 a Stricts: _ - FamilyInstance: none - T6 :: forall (k :: BOX). k -> * - data T6 (k::BOX)@N (a::k)@P - No C type associated - RecFlag NonRecursive, Not promotable - = K6 :: forall (k::BOX) (a::k). T6 k a - FamilyInstance: none - T7 :: forall (k :: BOX). k -> * -> * - data T7 (k::BOX)@N (a::k)@P b@R - No C type associated - RecFlag NonRecursive, Not promotable - = K7 :: forall (k::BOX) (a::k) b. b -> T7 k a b Stricts: _ - FamilyInstance: none -COERCION AXIOMS -Dependent modules: [] -Dependent packages: [base, ghc-prim, integer-gmp] - -==================== Typechecker ==================== - diff --git a/testsuite/tests/deriving/should_compile/Roles13.hs b/testsuite/tests/deriving/should_compile/Roles13.hs deleted file mode 100644 index 70d4c0c7d0..0000000000 --- a/testsuite/tests/deriving/should_compile/Roles13.hs +++ /dev/null @@ -1,12 +0,0 @@ -{-# LANGUAGE TypeFamilies, GeneralizedNewtypeDeriving, - MultiParamTypeClasses, FunctionalDependencies #-} - --- tests axiom roles - -module Roles13 where - -newtype Age = MkAge Int -newtype Wrap a = MkWrap a - -convert :: Wrap Age -> Int -convert (MkWrap (MkAge i)) = i diff --git a/testsuite/tests/deriving/should_compile/Roles13.stderr b/testsuite/tests/deriving/should_compile/Roles13.stderr deleted file mode 100644 index 647e59ba51..0000000000 --- a/testsuite/tests/deriving/should_compile/Roles13.stderr +++ /dev/null @@ -1,20 +0,0 @@ - -==================== Tidy Core ==================== -Result size of Tidy Core = {terms: 5, types: 9, coercions: 5} - -a :: Roles13.Wrap Roles13.Age -> Roles13.Wrap Roles13.Age -[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType] -a = \ (ds :: Roles13.Wrap Roles13.Age) -> ds - -Roles13.convert :: Roles13.Wrap Roles13.Age -> GHC.Types.Int -[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType] -Roles13.convert = - a - `cast` (<Roles13.Wrap Roles13.Age>_R - -> Roles13.NTCo:Wrap[0] Roles13.NTCo:Age[0] - :: (Roles13.Wrap Roles13.Age -> Roles13.Wrap Roles13.Age) - ~# - (Roles13.Wrap Roles13.Age -> GHC.Types.Int)) - - - diff --git a/testsuite/tests/deriving/should_compile/Roles2.hs b/testsuite/tests/deriving/should_compile/Roles2.hs deleted file mode 100644 index 1ead5a4e94..0000000000 --- a/testsuite/tests/deriving/should_compile/Roles2.hs +++ /dev/null @@ -1,9 +0,0 @@ -module Roles2 where - -import GHC.Ptr - --- these *must* have certain roles, or things break strangely --- see TcForeign - -data T1 a = K1 (IO a) -data T2 a = K2 (FunPtr a) diff --git a/testsuite/tests/deriving/should_compile/Roles2.stderr b/testsuite/tests/deriving/should_compile/Roles2.stderr deleted file mode 100644 index 2dcf28e3bf..0000000000 --- a/testsuite/tests/deriving/should_compile/Roles2.stderr +++ /dev/null @@ -1,20 +0,0 @@ -TYPE SIGNATURES -TYPE CONSTRUCTORS - T1 :: * -> * - data T1 a@R - No C type associated - RecFlag NonRecursive, Not promotable - = K1 :: forall a. (IO a) -> T1 a Stricts: _ - FamilyInstance: none - T2 :: * -> * - data T2 a@R - No C type associated - RecFlag NonRecursive, Not promotable - = K2 :: forall a. (FunPtr a) -> T2 a Stricts: _ - FamilyInstance: none -COERCION AXIOMS -Dependent modules: [] -Dependent packages: [base, ghc-prim, integer-gmp] - -==================== Typechecker ==================== - diff --git a/testsuite/tests/deriving/should_compile/Roles3.hs b/testsuite/tests/deriving/should_compile/Roles3.hs deleted file mode 100644 index 4c26f0d986..0000000000 --- a/testsuite/tests/deriving/should_compile/Roles3.hs +++ /dev/null @@ -1,21 +0,0 @@ -{-# LANGUAGE TypeFamilies, MultiParamTypeClasses #-} - -module Roles3 where - -class C1 a where - meth1 :: a -> a - -class C2 a b where - meth2 :: a ~ b => a -> b - -class C3 a b where - type F3 b - meth3 :: a -> F3 b -> F3 b - -type family F4 a - -class C4 a b where - meth4 :: a -> F4 b -> F4 b - -type Syn1 a = F4 a -type Syn2 a = [a]
\ No newline at end of file diff --git a/testsuite/tests/deriving/should_compile/Roles3.stderr b/testsuite/tests/deriving/should_compile/Roles3.stderr deleted file mode 100644 index 1b187f4907..0000000000 --- a/testsuite/tests/deriving/should_compile/Roles3.stderr +++ /dev/null @@ -1,35 +0,0 @@ -TYPE SIGNATURES -TYPE CONSTRUCTORS - C1 :: * -> Constraint - class C1 a@R - RecFlag NonRecursive - meth1 :: a -> a - C2 :: * -> * -> Constraint - class C2 a@N b@N - RecFlag NonRecursive - meth2 :: (~) * a b -> a -> b - C3 :: * -> * -> Constraint - class C3 a@R b@N - RecFlag NonRecursive - type family F3 b@N :: * - meth3 :: a -> F3 b -> F3 b - C4 :: * -> * -> Constraint - class C4 a@R b@N - RecFlag NonRecursive - meth4 :: a -> F4 b -> F4 b - F4 :: * -> * - type family F4 a@N :: * - Syn1 :: * -> * - type Syn1 a@N = F4 a - Syn2 :: * -> * - type Syn2 a@R = [a] -COERCION AXIOMS - axiom Roles3.NTCo:C1 :: C1 a = a -> a - axiom Roles3.NTCo:C2 :: C2 a b = a ~ b => a -> b - axiom Roles3.NTCo:C3 :: C3 a b = a -> F3 b -> F3 b - axiom Roles3.NTCo:C4 :: C4 a b = a -> F4 b -> F4 b -Dependent modules: [] -Dependent packages: [base, ghc-prim, integer-gmp] - -==================== Typechecker ==================== - diff --git a/testsuite/tests/deriving/should_compile/Roles4.hs b/testsuite/tests/deriving/should_compile/Roles4.hs deleted file mode 100644 index 32cb65a7df..0000000000 --- a/testsuite/tests/deriving/should_compile/Roles4.hs +++ /dev/null @@ -1,15 +0,0 @@ -{-# LANGUAGE RoleAnnotations #-} - -module Roles4 where - -class C1 a@N where - meth1 :: a -> a - -class C2 a@R where - meth2 :: a -> a - -type Syn1 a@N = [a] - -class C3 a where - meth3 :: a -> Syn1 a - diff --git a/testsuite/tests/deriving/should_compile/Roles4.stderr b/testsuite/tests/deriving/should_compile/Roles4.stderr deleted file mode 100644 index 9969cbca12..0000000000 --- a/testsuite/tests/deriving/should_compile/Roles4.stderr +++ /dev/null @@ -1,25 +0,0 @@ -TYPE SIGNATURES -TYPE CONSTRUCTORS - C1 :: * -> Constraint - class C1 a@N - RecFlag NonRecursive - meth1 :: a -> a - C2 :: * -> Constraint - class C2 a@R - RecFlag NonRecursive - meth2 :: a -> a - C3 :: * -> Constraint - class C3 a@N - RecFlag NonRecursive - meth3 :: a -> Syn1 a - Syn1 :: * -> * - type Syn1 a@N = [a] -COERCION AXIOMS - axiom Roles4.NTCo:C1 :: C1 a = a -> a - axiom Roles4.NTCo:C2 :: C2 a = a -> a - axiom Roles4.NTCo:C3 :: C3 a = a -> Syn1 a -Dependent modules: [] -Dependent packages: [base, ghc-prim, integer-gmp] - -==================== Typechecker ==================== - diff --git a/testsuite/tests/deriving/should_compile/all.T b/testsuite/tests/deriving/should_compile/all.T index bae74bf4dd..d27f829c4a 100644 --- a/testsuite/tests/deriving/should_compile/all.T +++ b/testsuite/tests/deriving/should_compile/all.T @@ -41,9 +41,4 @@ test('T7710', normal, compile, ['']) test('AutoDeriveTypeable', normal, compile, ['']) -test('Roles1', only_ways('normal'), compile, ['-ddump-tc']) -test('Roles2', only_ways('normal'), compile, ['-ddump-tc']) -test('Roles3', only_ways('normal'), compile, ['-ddump-tc']) -test('Roles4', only_ways('normal'), compile, ['-ddump-tc']) -test('Roles13', only_ways('normal'), compile, ['-ddump-simpl -dsuppress-uniques']) test('T8138', normal, compile, ['-O2'])
\ No newline at end of file diff --git a/testsuite/tests/deriving/should_fail/Roles10.hs b/testsuite/tests/deriving/should_fail/Roles10.hs deleted file mode 100644 index af19bfdf31..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles10.hs +++ /dev/null @@ -1,16 +0,0 @@ -{-# LANGUAGE GeneralizedNewtypeDeriving, TypeFamilies #-} - -module Roles10 where - -type family F a -type instance F Int = Bool -type instance F Age = Char - -class C a where - meth :: a -> F a - -instance C Int where - meth = (> 0) - -newtype Age = MkAge Int - deriving C
\ No newline at end of file diff --git a/testsuite/tests/deriving/should_fail/Roles10.stderr b/testsuite/tests/deriving/should_fail/Roles10.stderr deleted file mode 100644 index 756aaa2e00..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles10.stderr +++ /dev/null @@ -1,7 +0,0 @@ - -Roles10.hs:16:12: - Can't make a derived instance of ‛C Age’ - (even with cunning newtype deriving): - it is not type-safe to use GeneralizedNewtypeDeriving on this class; - the last parameter of ‛C’ is at role Nominal - In the newtype declaration for ‛Age’ diff --git a/testsuite/tests/deriving/should_fail/Roles11.hs b/testsuite/tests/deriving/should_fail/Roles11.hs deleted file mode 100644 index c95cee798d..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles11.hs +++ /dev/null @@ -1,7 +0,0 @@ -{-# LANGUAGE GADTs, RoleAnnotations #-} - -module Roles11 where - -data T2 a@R where - K2 :: T2 Int - diff --git a/testsuite/tests/deriving/should_fail/Roles11.stderr b/testsuite/tests/deriving/should_fail/Roles11.stderr deleted file mode 100644 index 2b68612999..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles11.stderr +++ /dev/null @@ -1,5 +0,0 @@ - -Roles11.hs:5:1: - Role mismatch on variable a: - Annotation says Representational but role Nominal is required - In the data declaration for ‛T2’ diff --git a/testsuite/tests/deriving/should_fail/Roles12.hs b/testsuite/tests/deriving/should_fail/Roles12.hs deleted file mode 100644 index 875d105b78..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles12.hs +++ /dev/null @@ -1,5 +0,0 @@ -module Roles12 where - -import {-# SOURCE #-} Roles12 - -data T a diff --git a/testsuite/tests/deriving/should_fail/Roles12.hs-boot b/testsuite/tests/deriving/should_fail/Roles12.hs-boot deleted file mode 100644 index 6a708d984a..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles12.hs-boot +++ /dev/null @@ -1,3 +0,0 @@ -module Roles12 where - -data T a
\ No newline at end of file diff --git a/testsuite/tests/deriving/should_fail/Roles12.stderr b/testsuite/tests/deriving/should_fail/Roles12.stderr deleted file mode 100644 index ad8c25eecb..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles12.stderr +++ /dev/null @@ -1,13 +0,0 @@ - -Roles12.hs:5:6: - Type constructor ‛T’ has conflicting definitions in the module - and its hs-boot file - Main module: data T a@P - No C type associated - RecFlag Recursive, Promotable - = - FamilyInstance: none - Boot file: abstract(False) T a@R - No C type associated - RecFlag NonRecursive, Not promotable - FamilyInstance: none diff --git a/testsuite/tests/deriving/should_fail/Roles5.hs b/testsuite/tests/deriving/should_fail/Roles5.hs deleted file mode 100644 index 8fe983ccb9..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles5.hs +++ /dev/null @@ -1,5 +0,0 @@ -module Roles5 where - -data T a@N -class C a@R -type S a@P = Int
\ No newline at end of file diff --git a/testsuite/tests/deriving/should_fail/Roles5.stderr b/testsuite/tests/deriving/should_fail/Roles5.stderr deleted file mode 100644 index 29018be19d..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles5.stderr +++ /dev/null @@ -1,15 +0,0 @@ - -Roles5.hs:3:8: - Illegal role annotation - Perhaps you intended to use RoleAnnotations - In the data type declaration for ‛T’ - -Roles5.hs:4:9: - Illegal role annotation - Perhaps you intended to use RoleAnnotations - In the declaration for class C - -Roles5.hs:5:8: - Illegal role annotation - Perhaps you intended to use RoleAnnotations - In the declaration for type synonym ‛S’ diff --git a/testsuite/tests/deriving/should_fail/Roles6.hs b/testsuite/tests/deriving/should_fail/Roles6.hs deleted file mode 100644 index 56f80a1e2b..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles6.hs +++ /dev/null @@ -1,5 +0,0 @@ -{-# LANGUAGE RoleAnnotations, TypeFamilies #-} - -module Roles6 where - -type family F a@R diff --git a/testsuite/tests/deriving/should_fail/Roles6.stderr b/testsuite/tests/deriving/should_fail/Roles6.stderr deleted file mode 100644 index 4b89a9e40a..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles6.stderr +++ /dev/null @@ -1,5 +0,0 @@ - -Roles6.hs:5:1: - Illegal role annotation on variable a; - role annotations are not allowed here - In the family declaration for ‛F’ diff --git a/testsuite/tests/deriving/should_fail/Roles7.hs b/testsuite/tests/deriving/should_fail/Roles7.hs deleted file mode 100644 index 5d62803e3a..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles7.hs +++ /dev/null @@ -1,6 +0,0 @@ -{-# LANGUAGE RoleAnnotations #-} - -module Roles7 where - -bar :: Int@P -> Int -bar = id
\ No newline at end of file diff --git a/testsuite/tests/deriving/should_fail/Roles7.stderr b/testsuite/tests/deriving/should_fail/Roles7.stderr deleted file mode 100644 index 5e527a69f7..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles7.stderr +++ /dev/null @@ -1,4 +0,0 @@ - -Roles7.hs:5:8: - Illegal role annotation on Int - In the type signature for ‛bar’ diff --git a/testsuite/tests/deriving/should_fail/Roles8.hs b/testsuite/tests/deriving/should_fail/Roles8.hs deleted file mode 100644 index b05cf5dad4..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles8.hs +++ /dev/null @@ -1,5 +0,0 @@ -{-# LANGUAGE RoleAnnotations, GADTs #-} - -module Roles8 where - -data T1 a@P = K1 a diff --git a/testsuite/tests/deriving/should_fail/Roles8.stderr b/testsuite/tests/deriving/should_fail/Roles8.stderr deleted file mode 100644 index 12aa9fbc78..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles8.stderr +++ /dev/null @@ -1,5 +0,0 @@ - -Roles8.hs:5:1: - Role mismatch on variable a: - Annotation says Phantom but role Representational is required - In the data declaration for ‛T1’ diff --git a/testsuite/tests/deriving/should_fail/Roles9.hs b/testsuite/tests/deriving/should_fail/Roles9.hs deleted file mode 100644 index 86d10a3063..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles9.hs +++ /dev/null @@ -1,12 +0,0 @@ -{-# LANGUAGE GeneralizedNewtypeDeriving, RoleAnnotations #-} - -module Roles9 where - -class C a@N where - meth :: a -> a - -instance C Int where - meth = (+ 1) - -newtype Age = MkAge Int - deriving C diff --git a/testsuite/tests/deriving/should_fail/Roles9.stderr b/testsuite/tests/deriving/should_fail/Roles9.stderr deleted file mode 100644 index 43c3dc7da3..0000000000 --- a/testsuite/tests/deriving/should_fail/Roles9.stderr +++ /dev/null @@ -1,7 +0,0 @@ - -Roles9.hs:12:12: - Can't make a derived instance of ‛C Age’ - (even with cunning newtype deriving): - it is not type-safe to use GeneralizedNewtypeDeriving on this class; - the last parameter of ‛C’ is at role Nominal - In the newtype declaration for ‛Age’ diff --git a/testsuite/tests/deriving/should_fail/all.T b/testsuite/tests/deriving/should_fail/all.T index 610f1181fe..607ffa35f7 100644 --- a/testsuite/tests/deriving/should_fail/all.T +++ b/testsuite/tests/deriving/should_fail/all.T @@ -42,16 +42,6 @@ test('T1133A', test('T5863a', normal, compile_fail, ['']) test('T7959', normal, compile_fail, ['']) -test('Roles5', normal, compile_fail, ['']) -test('Roles6', normal, compile_fail, ['']) -test('Roles7', normal, compile_fail, ['']) -test('Roles8', normal, compile_fail, ['']) -test('Roles9', normal, compile_fail, ['']) -test('Roles10', normal, compile_fail, ['']) -test('Roles11', normal, compile_fail, ['']) -test('Roles12', - extra_clean(['Roles12.o-boot', 'Roles12.hi-boot']), - run_command, ['$MAKE --no-print-directory -s Roles12']) test('T1496', normal, compile_fail, ['']) test('T4846', normal, compile_fail, ['']) test('T7148', normal, compile_fail, ['']) |