Resolving dependencies... Configuring data-default-class-0.1.2.0... Configuring dlist-0.8.0.2... Building dlist-0.8.0.2... Building data-default-class-0.1.2.0... Installed data-default-class-0.1.2.0 Configuring mtl-2.2.1... Building mtl-2.2.1... Configuring old-locale-1.0.0.7... Installed dlist-0.8.0.2 Building old-locale-1.0.0.7... Configuring data-default-instances-containers-0.0.1... Installed old-locale-1.0.0.7 Building data-default-instances-containers-0.0.1... Installed data-default-instances-containers-0.0.1 Configuring data-default-instances-dlist-0.0.1... Configuring data-default-instances-old-locale-0.0.1... Installed mtl-2.2.1 Building data-default-instances-dlist-0.0.1... Building data-default-instances-old-locale-0.0.1... Installed data-default-instances-old-locale-0.0.1 Installed data-default-instances-dlist-0.0.1 Configuring data-default-0.7.1.1... Building data-default-0.7.1.1... Installed data-default-0.7.1.1 Configuring test-fixture-0.2.0.0... Building test-fixture-0.2.0.0... Failed to install test-fixture-0.2.0.0 Build log ( /home/builder/.cabal/logs/test-fixture-0.2.0.0.log ): cabal: Entering directory '/tmp/cabal-tmp-12916/test-fixture-0.2.0.0' Configuring test-fixture-0.2.0.0... Building test-fixture-0.2.0.0... Preprocessing library test-fixture-0.2.0.0... [1 of 2] Compiling Control.Monad.TestFixture ( src/Control/Monad/TestFixture.hs, dist/build/Control/Monad/TestFixture.o ) [2 of 2] Compiling Control.Monad.TestFixture.TH ( src/Control/Monad/TestFixture/TH.hs, dist/build/Control/Monad/TestFixture/TH.o ) src/Control/Monad/TestFixture/TH.hs:119:56: error: • Couldn't match expected type ‘Maybe Kind’ with actual type ‘[Con]’ • In the fourth argument of ‘DataD’, namely ‘fixtureCs’ In the expression: DataD [] fixtureName [PlainTV mVar] fixtureCs [] In an equation for ‘fixtureDec’: fixtureDec = DataD [] fixtureName [PlainTV mVar] fixtureCs [] src/Control/Monad/TestFixture/TH.hs:120:3: error: • Couldn't match type ‘Cxt -> Dec’ with ‘Dec’ Expected type: Q (Dec, [VarStrictType]) Actual type: Q (Cxt -> Dec, [VarStrictType]) • In a stmt of a 'do' block: return (fixtureDec, fixtureFields) In the expression: do { types <- traverse conT classNames; info <- traverse reify classNames; methods <- traverse classMethods info; mVar <- newName "m"; .... } In an equation for ‘mkFixtureRecord’: mkFixtureRecord fixtureName classNames = do { types <- traverse conT classNames; info <- traverse reify classNames; methods <- traverse classMethods info; .... } src/Control/Monad/TestFixture/TH.hs:133:3: error: • Couldn't match type ‘[Dec] -> Dec’ with ‘Dec’ Expected type: Q Dec Actual type: Q ([Dec] -> Dec) • In a stmt of a 'do' block: return $ InstanceD [] (AppT (ConT ''Default) appliedFixtureT) [defDecl] In the expression: do { varName <- newName "m"; let appliedFixtureT = AppT (ConT fixtureName) (VarT varName); let fieldNames = map (\ (name, _, _) -> ...) fixtureFields; let fixtureClauses = map unimplementedField fieldNames; .... } In an equation for ‘mkDefaultInstance’: mkDefaultInstance fixtureName fixtureFields = do { varName <- newName "m"; let appliedFixtureT = ...; let fieldNames = ...; .... } src/Control/Monad/TestFixture/TH.hs:133:22: error: • Couldn't match expected type ‘Maybe Overlap’ with actual type ‘[t0]’ • In the first argument of ‘InstanceD’, namely ‘[]’ In the second argument of ‘($)’, namely ‘InstanceD [] (AppT (ConT ''Default) appliedFixtureT) [defDecl]’ In a stmt of a 'do' block: return $ InstanceD [] (AppT (ConT ''Default) appliedFixtureT) [defDecl] src/Control/Monad/TestFixture/TH.hs:133:26: error: • Couldn't match type ‘Type’ with ‘[Pred]’ Expected type: Cxt Actual type: Type • In the second argument of ‘InstanceD’, namely ‘(AppT (ConT ''Default) appliedFixtureT)’ In the second argument of ‘($)’, namely ‘InstanceD [] (AppT (ConT ''Default) appliedFixtureT) [defDecl]’ In a stmt of a 'do' block: return $ InstanceD [] (AppT (ConT ''Default) appliedFixtureT) [defDecl] src/Control/Monad/TestFixture/TH.hs:133:65: error: • Couldn't match expected type ‘Type’ with actual type ‘[Dec]’ • In the third argument of ‘InstanceD’, namely ‘[defDecl]’ In the second argument of ‘($)’, namely ‘InstanceD [] (AppT (ConT ''Default) appliedFixtureT) [defDecl]’ In a stmt of a 'do' block: return $ InstanceD [] (AppT (ConT ''Default) appliedFixtureT) [defDecl] src/Control/Monad/TestFixture/TH.hs:147:3: error: • Couldn't match type ‘[Dec] -> Dec’ with ‘Dec’ Expected type: Q Dec Actual type: Q ([Dec] -> Dec) • In a stmt of a 'do' block: return $ InstanceD [monoidConstraint] instanceHead funDecls In the expression: do { writerVar <- VarT <$> newName "w"; stateVar <- VarT <$> newName "s"; let monoidConstraint = AppT (ConT ...) writerVar; let fixtureWithoutVarsT = AppT (ConT ...) (ConT fixtureName); .... } In an equation for ‘mkInstance’: mkInstance (ClassI (ClassD _ className _ _ methods) _) fixtureName = do { writerVar <- VarT <$> newName "w"; stateVar <- VarT <$> newName "s"; let monoidConstraint = ...; .... } src/Control/Monad/TestFixture/TH.hs:147:22: error: • Couldn't match expected type ‘Maybe Overlap’ with actual type ‘[Type]’ • In the first argument of ‘InstanceD’, namely ‘[monoidConstraint]’ In the second argument of ‘($)’, namely ‘InstanceD [monoidConstraint] instanceHead funDecls’ In a stmt of a 'do' block: return $ InstanceD [monoidConstraint] instanceHead funDecls src/Control/Monad/TestFixture/TH.hs:147:41: error: • Couldn't match type ‘Type’ with ‘[Pred]’ Expected type: Cxt Actual type: Type • In the second argument of ‘InstanceD’, namely ‘instanceHead’ In the second argument of ‘($)’, namely ‘InstanceD [monoidConstraint] instanceHead funDecls’ In a stmt of a 'do' block: return $ InstanceD [monoidConstraint] instanceHead funDecls src/Control/Monad/TestFixture/TH.hs:147:54: error: • Couldn't match expected type ‘Type’ with actual type ‘[Dec]’ • In the third argument of ‘InstanceD’, namely ‘funDecls’ In the second argument of ‘($)’, namely ‘InstanceD [monoidConstraint] instanceHead funDecls’ In a stmt of a 'do' block: return $ InstanceD [monoidConstraint] instanceHead funDecls src/Control/Monad/TestFixture/TH.hs:194:57: error: • Data constructor not in scope: NotStrict :: Bang • Perhaps you meant variable ‘notStrict’ (imported from Language.Haskell.TH) cabal: Leaving directory '/tmp/cabal-tmp-12916/test-fixture-0.2.0.0' cabal: Error: some packages failed to install: test-fixture-0.2.0.0 failed during the building phase. The exception was: ExitFailure 1