summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_compile/T4401.hs
blob: 23ee12cadb2f0b0542d4d9366d2017dddbc8b469 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
{-# OPTIONS_GHC -fno-warn-redundant-constraints #-}
{-# LANGUAGE FlexibleInstances, UndecidableInstances,
             MultiParamTypeClasses, FunctionalDependencies #-}
module T4401 where

class Mul x y z | x y -> z
class IsType a
class IsType a => IsSized a s | a -> s

data Array n a = Array
instance IsSized a s => IsType (Array n a)
instance (IsSized a s, Mul n s ns) => IsSized (Array n a) ns