Resolving dependencies... Configuring cmdargs-0.10.14... Configuring mtl-2.2.1... Building cmdargs-0.10.14... Building mtl-2.2.1... Configuring text-1.2.2.1... Installed mtl-2.2.1 Building text-1.2.2.1... Installed cmdargs-0.10.14 Installed text-1.2.2.1 Configuring parsec-3.1.11... Building parsec-3.1.11... Installed parsec-3.1.11 Configuring language-slice-0.3.0.0... Building language-slice-0.3.0.0... Installed language-slice-0.3.0.0 Configuring slice-cpp-gen-0.2.0.0... Building slice-cpp-gen-0.2.0.0... Failed to install slice-cpp-gen-0.2.0.0 Build log ( /home/builder/.cabal/logs/slice-cpp-gen-0.2.0.0.log ): cabal: Entering directory '/tmp/cabal-tmp-24122/slice-cpp-gen-0.2.0.0' Configuring slice-cpp-gen-0.2.0.0... Building slice-cpp-gen-0.2.0.0... Preprocessing executable 'slice-cpp-gen' for slice-cpp-gen-0.2.0.0... [1 of 1] Compiling Main ( src/slice-cpp-gen.hs, dist/build/slice-cpp-gen/slice-cpp-gen-tmp/Main.o ) src/slice-cpp-gen.hs:34:57: error: • Couldn't match expected type ‘[Char]’ with actual type ‘Ident’ • In the first argument of ‘(++)’, namely ‘nm’ In the second argument of ‘()’, namely ‘nm ++ "I.h"’ In the expression: trgtdir nm ++ "I.h" src/slice-cpp-gen.hs:34:102: error: • Couldn't match type ‘Ident’ with ‘[Char]’ Expected type: [String] Actual type: [Ident] • In the first argument of ‘genH’, namely ‘ns’ In the second argument of ‘($)’, namely ‘genH ns nm mthds’ In the expression: BLB.toLazyByteString $ genH ns nm mthds src/slice-cpp-gen.hs:34:105: error: • Couldn't match type ‘Ident’ with ‘[Char]’ Expected type: String Actual type: Ident • In the second argument of ‘genH’, namely ‘nm’ In the second argument of ‘($)’, namely ‘genH ns nm mthds’ In the expression: BLB.toLazyByteString $ genH ns nm mthds src/slice-cpp-gen.hs:35:57: error: • Couldn't match expected type ‘[Char]’ with actual type ‘Ident’ • In the first argument of ‘(++)’, namely ‘nm’ In the second argument of ‘()’, namely ‘nm ++ "I.cpp"’ In the expression: trgtdir nm ++ "I.cpp" src/slice-cpp-gen.hs:35:102: error: • Couldn't match type ‘Ident’ with ‘[Char]’ Expected type: [String] Actual type: [Ident] • In the first argument of ‘genCpp’, namely ‘ns’ In the second argument of ‘($)’, namely ‘genCpp ns nm mthds’ In the expression: BLB.toLazyByteString $ genCpp ns nm mthds src/slice-cpp-gen.hs:35:105: error: • Couldn't match expected type ‘[Char]’ with actual type ‘Ident’ • In the second argument of ‘genCpp’, namely ‘nm’ In the second argument of ‘($)’, namely ‘genCpp ns nm mthds’ In the expression: BLB.toLazyByteString $ genCpp ns nm mthds src/slice-cpp-gen.hs:76:96: error: • Couldn't match type ‘Ident’ with ‘[Char]’ Expected type: String Actual type: Ident • In the first argument of ‘fromString’, namely ‘nm’ In the first argument of ‘(<>)’, namely ‘fromString nm’ In the second argument of ‘(<>)’, namely ‘fromString nm <> "(" <> genFields flds <> (if null flds then "" else ", ") <> "const Ice::Current& current)"’ src/slice-cpp-gen.hs:78:73: error: • Couldn't match type ‘Ident’ with ‘[Char]’ Expected type: String Actual type: Ident • In the first argument of ‘fromString’, namely ‘nm’ In the second argument of ‘(<>)’, namely ‘fromString nm’ In the second argument of ‘(<>)’, namely ‘" " <> fromString nm’ src/slice-cpp-gen.hs:92:48: error: • Couldn't match type ‘NsQualIdent’ with ‘[Char]’ Expected type: String Actual type: NsQualIdent • In the first argument of ‘fromString’, namely ‘nm’ In the expression: fromString nm In an equation for ‘genType’: genType (STUserDefined nm) = fromString nm src/slice-cpp-gen.hs:93:48: error: • Couldn't match type ‘NsQualIdent’ with ‘[Char]’ Expected type: String Actual type: NsQualIdent • In the first argument of ‘fromString’, namely ‘nm’ In the first argument of ‘(<>)’, namely ‘fromString nm’ In the expression: fromString nm <> "Prx" src/slice-cpp-gen.hs:103:8: error: • Couldn't match expected type ‘BS.ByteString -> Either [Char] [SliceDecl]’ with actual type ‘parsec-3.1.11:Text.Parsec.Prim.ParsecT BS.ByteString () Data.Functor.Identity.Identity SliceDecl’ • The function ‘SlcP.parseSlice’ is applied to one argument, but its type ‘parsec-3.1.11:Text.Parsec.Prim.ParsecT BS.ByteString () Data.Functor.Identity.Identity SliceDecl’ has none In the expression: SlcP.parseSlice slcData In a stmt of a 'do' block: case SlcP.parseSlice slcData of { Left err -> putStrLn (err ++ "\n\ \exiting...") >> exitFailure Right [] -> putStrLn ("Parsing '" ++ icef ++ "' didn't produce any output, probably because the Slice parser is deficient.\n\ \To improve it, please report your slice file to paul.koerbitz@gmail.com") >> exitFailure Right ast -> do { let ...; mapM_ chkwrtr fileData } } cabal: Leaving directory '/tmp/cabal-tmp-24122/slice-cpp-gen-0.2.0.0' cabal: Error: some packages failed to install: slice-cpp-gen-0.2.0.0 failed during the building phase. The exception was: ExitFailure 1