Resolving dependencies... Configuring dlist-0.8.0.2... Configuring mtl-2.2.1... Building dlist-0.8.0.2... Building mtl-2.2.1... Installed dlist-0.8.0.2 Configuring names-th-0.2.0.2... Building names-th-0.2.0.2... Configuring old-locale-1.0.0.7... Installed mtl-2.2.1 Building old-locale-1.0.0.7... Configuring sql-words-0.1.4.1... Installed names-th-0.2.0.2 Building sql-words-0.1.4.1... Configuring text-1.2.2.1... Installed old-locale-1.0.0.7 Building text-1.2.2.1... Configuring th-data-compat-0.0.2.2... Installed sql-words-0.1.4.1 Building th-data-compat-0.0.2.2... Configuring utf8-string-1.0.1.1... Installed th-data-compat-0.0.2.2 Building utf8-string-1.0.1.1... Configuring th-reify-compat-0.0.1.1... Installed utf8-string-1.0.1.1 Building th-reify-compat-0.0.1.1... Configuring time-locale-compat-0.1.1.3... Installed th-reify-compat-0.0.1.1 Building time-locale-compat-0.1.1.3... Installed time-locale-compat-0.1.1.3 Configuring old-time-1.1.0.3... Building old-time-1.1.0.3... Configuring persistable-record-0.4.1.0... Installed text-1.2.2.1 Installed old-time-1.1.0.3 Configuring convertible-1.1.1.0... Building persistable-record-0.4.1.0... Building convertible-1.1.1.0... Installed persistable-record-0.4.1.0 Configuring relational-query-0.8.3.2... Building relational-query-0.8.3.2... Installed convertible-1.1.1.0 Configuring HDBC-2.4.0.1... Building HDBC-2.4.0.1... Installed HDBC-2.4.0.1 Configuring HDBC-session-0.1.1.0... Building HDBC-session-0.1.1.0... Installed HDBC-session-0.1.1.0 Configuring HDBC-sqlite3-2.3.3.1... Building HDBC-sqlite3-2.3.3.1... Installed relational-query-0.8.3.2 Configuring relational-schemas-0.1.3.1... Building relational-schemas-0.1.3.1... Installed HDBC-sqlite3-2.3.3.1 Installed relational-schemas-0.1.3.1 Configuring relational-query-HDBC-0.6.0.2... Building relational-query-HDBC-0.6.0.2... Installed relational-query-HDBC-0.6.0.2 Downloading relational-record-examples-0.2.0.3... Configuring relational-record-examples-0.2.0.3... Building relational-record-examples-0.2.0.3... Failed to install relational-record-examples-0.2.0.3 Build log ( /home/builder/.cabal/logs/relational-record-examples-0.2.0.3.log ): cabal: Entering directory '/tmp/cabal-tmp-28836/relational-record-examples-0.2.0.3' Configuring relational-record-examples-0.2.0.3... Building relational-record-examples-0.2.0.3... Preprocessing executable 'examples' for relational-record-examples-0.2.0.3... [ 1 of 11] Compiling DataSource ( src/DataSource.hs, dist/build/examples/examples-tmp/DataSource.o ) [ 2 of 11] Compiling Department ( src/Department.hs, dist/build/examples/examples-tmp/Department.o ) [ 3 of 11] Compiling Employee ( src/Employee.hs, dist/build/examples/examples-tmp/Employee.o ) [ 4 of 11] Compiling Individual ( src/Individual.hs, dist/build/examples/examples-tmp/Individual.o ) [ 5 of 11] Compiling Product ( src/Product.hs, dist/build/examples/examples-tmp/Product.o ) [ 6 of 11] Compiling Transaction ( src/Transaction.hs, dist/build/examples/examples-tmp/Transaction.o ) [ 7 of 11] Compiling Customer ( src/Customer.hs, dist/build/examples/examples-tmp/Customer.o ) [ 8 of 11] Compiling Business ( src/Business.hs, dist/build/examples/examples-tmp/Business.o ) [ 9 of 11] Compiling Branch ( src/Branch.hs, dist/build/examples/examples-tmp/Branch.o ) [10 of 11] Compiling Account ( src/Account.hs, dist/build/examples/examples-tmp/Account.o ) [11 of 11] Compiling Main ( src/examples.hs, dist/build/examples/examples-tmp/Main.o ) src/examples.hs:85:19: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Relation () (((Int64, String), Int64), Maybe Double) Actual type: Relation () (((GHC.Int.Int32, String), GHC.Int.Int32), Maybe Double) • In the expression: relation $ do { a <- query account; wheres $ a ! Account.productCd' `in'` values ["CHK", "SAV", ....]; return $ a ! Account.accountId' >< a ! Account.productCd' >< a ! Account.custId' >< a ! Account.availBalance' } In an equation for ‘account_4_3_3aT’: account_4_3_3aT = relation $ do { a <- query account; wheres $ a ! Account.productCd' `in'` values ["CHK", ....]; return $ a ! Account.accountId' >< a ! Account.productCd' >< a ! Account.custId' >< a ! Account.availBalance' } src/examples.hs:105:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|$|)’, namely ‘a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account1 |$| a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account1 |$| a ! Account.accountId' |*| a ! Account.productCd'’ src/examples.hs:107:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|*|)’, namely ‘a ! Account.custId'’ In the first argument of ‘(|*|)’, namely ‘Account1 |$| a ! Account.accountId' |*| a ! Account.productCd' |*| a ! Account.custId'’ In the second argument of ‘($)’, namely ‘Account1 |$| a ! Account.accountId' |*| a ! Account.productCd' |*| a ! Account.custId' |*| a ! Account.availBalance'’ src/examples.hs:240:21: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Relation () (Maybe Int64, Maybe Int64) Actual type: Relation () (Maybe GHC.Int.Int32, Maybe GHC.Int.Int32) • In the expression: relation (do { e <- query employee; wheres $ e ! Employee.title' .=. just (value "Teller"); return $ just (e ! Employee.empId') >< e ! Employee.assignedBranchId' }) `union` relation (do { a <- query account; wheres $ a ! Account.productCd' .=. value "SAV"; return $ a ! Account.openEmpId' >< a ! Account.openBranchId' }) In an equation for ‘union_6_4_1a_Flat’: union_6_4_1a_Flat = relation (do { e <- query employee; wheres $ e ! Employee.title' .=. just (value "Teller"); return $ just (e ! Employee.empId') >< e ! Employee.assignedBranchId' }) `union` relation (do { a <- query account; wheres $ a ! Account.productCd' .=. value "SAV"; return $ a ! Account.openEmpId' >< a ! Account.openBranchId' }) src/examples.hs:272:19: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Relation () (Maybe Int64, Maybe Int64) Actual type: Relation () (Maybe GHC.Int.Int32, Maybe GHC.Int.Int32) • In the expression: relation $ do { e <- query employee; wheres $ e ! Employee.title' .=. just (value "Teller"); return $ just (e ! Employee.empId') >< e ! Employee.assignedBranchId' } In an equation for ‘employee_6_4_1a’: employee_6_4_1a = relation $ do { e <- query employee; wheres $ e ! Employee.title' .=. just (value "Teller"); return $ just (e ! Employee.empId') >< e ! Employee.assignedBranchId' } src/examples.hs:278:18: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Relation () (Maybe Int64, Maybe Int64) Actual type: Relation () (Maybe GHC.Int.Int32, Maybe GHC.Int.Int32) • In the expression: relation $ do { a <- query account; wheres $ a ! Account.productCd' .=. value "SAV"; return $ a ! Account.openEmpId' >< a ! Account.openBranchId' } In an equation for ‘account_6_4_1a’: account_6_4_1a = relation $ do { a <- query account; wheres $ a ! Account.productCd' .=. value "SAV"; return $ a ! Account.openEmpId' >< a ! Account.openBranchId' } src/examples.hs:302:14: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Relation () (Maybe Int64, Int64) Actual type: Relation () (Maybe GHC.Int.Int32, Int64) • In the expression: aggregateRelation $ do { a <- query account; g <- groupBy $ a ! Account.openEmpId'; asc $ g ! id'; return $ g >< count (a ! Account.accountId') } In an equation for ‘group_8_1a’: group_8_1a = aggregateRelation $ do { a <- query account; g <- groupBy $ a ! Account.openEmpId'; asc $ g ! id'; .... } src/examples.hs:348:19: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Relation String (((Int64, String), Int64), Maybe Double) Actual type: Relation String (((GHC.Int.Int32, String), GHC.Int.Int32), Maybe Double) • In the expression: relation' $ do { a <- query account; (phProductCd, p) <- queryList' product_4_3_3b; wheres $ a ! Account.productCd' `in'` p; let at = a ! Account.accountId' >< a ! Account.productCd' >< a ! Account.custId' >< a ! Account.availBalance'; .... } In an equation for ‘account_4_3_3bT’: account_4_3_3bT = relation' $ do { a <- query account; (phProductCd, p) <- queryList' product_4_3_3b; wheres $ a ! Account.productCd' `in'` p; .... } src/examples.hs:370:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|$|)’, namely ‘a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account1 |$| a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account1 |$| a ! Account.accountId' |*| a ! Account.productCd'’ src/examples.hs:372:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|*|)’, namely ‘a ! Account.custId'’ In the first argument of ‘(|*|)’, namely ‘Account1 |$| a ! Account.accountId' |*| a ! Account.productCd' |*| a ! Account.custId'’ In the expression: Account1 |$| a ! Account.accountId' |*| a ! Account.productCd' |*| a ! Account.custId' |*| a ! Account.availBalance' src/examples.hs:426:15: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Relation () (Maybe Int64, String) Actual type: Relation () (Maybe GHC.Int.Int32, String) • In the expression: relation $ do { a <- query account; let proj = (,) |$| a ! Account.openEmpId' |*| a ! Account.productCd'; asc proj; return proj } In an equation for ‘account_3_7’: account_3_7 = relation $ do { a <- query account; let proj = ...; asc proj; .... } src/examples.hs:455:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|$|)’, namely ‘a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account2 |$| a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account2 |$| a ! Account.accountId' |*| a ! Account.productCd'’ src/examples.hs:496:26: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|$|)’, namely ‘e ! Employee.empId'’ In the first argument of ‘(|*|)’, namely ‘Employee1 |$| e ! Employee.empId'’ In the first argument of ‘(|*|)’, namely ‘Employee1 |$| e ! Employee.empId' |*| e ! Employee.title'’ src/examples.hs:594:26: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|$|)’, namely ‘e ! Employee.empId'’ In the first argument of ‘(|*|)’, namely ‘Employee2 |$| e ! Employee.empId'’ In the first argument of ‘(|*|)’, namely ‘Employee2 |$| e ! Employee.empId' |*| e ! Employee.fname'’ src/examples.hs:619:26: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|$|)’, namely ‘e ! Employee.empId'’ In the first argument of ‘(|*|)’, namely ‘Employee2 |$| e ! Employee.empId'’ In the first argument of ‘(|*|)’, namely ‘Employee2 |$| e ! Employee.empId' |*| e ! Employee.fname'’ src/examples.hs:671:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|$|)’, namely ‘a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account3 |$| a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account3 |$| a ! Account.accountId' |*| a ! Account.custId'’ src/examples.hs:672:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|*|)’, namely ‘a ! Account.custId'’ In the first argument of ‘(|*|)’, namely ‘Account3 |$| a ! Account.accountId' |*| a ! Account.custId'’ In the first argument of ‘(|*|)’, namely ‘Account3 |$| a ! Account.accountId' |*| a ! Account.custId' |*| a ! Account.openDate'’ src/examples.hs:710:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|$|)’, namely ‘a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account1 |$| a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account1 |$| a ! Account.accountId' |*| a ! Account.productCd'’ src/examples.hs:712:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|*|)’, namely ‘a ! Account.custId'’ In the first argument of ‘(|*|)’, namely ‘Account1 |$| a ! Account.accountId' |*| a ! Account.productCd' |*| a ! Account.custId'’ In the second argument of ‘($)’, namely ‘Account1 |$| a ! Account.accountId' |*| a ! Account.productCd' |*| a ! Account.custId' |*| a ! Account.availBalance'’ src/examples.hs:756:29: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection c Int64 Actual type: Projection c GHC.Int.Int32 • In the second argument of ‘(|$|)’, namely ‘c ! Customer.custId'’ In the first argument of ‘(|*|)’, namely ‘Customer1 |$| c ! Customer.custId'’ In the first argument of ‘(|*|)’, namely ‘Customer1 |$| c ! Customer.custId' |*| c ! Customer.custTypeCd'’ src/examples.hs:798:21: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Delete Int64 Actual type: Delete GHC.Int.Int32 • In the expression: derivedDelete $ \ proj -> do { fmap fst $ placeholder (\ ph -> wheres $ proj ! Account.accountId' .=. ph) } In an equation for ‘deleteAccount_o1P’: deleteAccount_o1P = derivedDelete $ \ proj -> do { fmap fst $ placeholder (\ ph -> ...) } src/examples.hs:832:21: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Delete (Int64, Int64) Actual type: Delete (GHC.Int.Int32, GHC.Int.Int32) • In the expression: derivedDelete $ \ proj -> do { (phMin, ()) <- placeholder (\ ph -> wheres $ proj ! Account.accountId' .>=. ph); (phMax, ()) <- placeholder (\ ph -> wheres $ proj ! Account.accountId' .<=. ph); .... } In an equation for ‘deleteAccount_o2P’: deleteAccount_o2P = derivedDelete $ \ proj -> do { (phMin, ()) <- placeholder (\ ph -> ...); .... } src/examples.hs:908:22: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Update ((String, Int64), Int64) Actual type: Update ((String, GHC.Int.Int32), GHC.Int.Int32) • In the expression: derivedUpdate $ \ proj -> do { (phLname, ()) <- placeholder (\ ph -> Employee.lname' <-# ph); (phDeptId, ()) <- placeholder (\ ph -> Employee.deptId' <-# just ph); .... } In an equation for ‘updateEmployee_o3P’: updateEmployee_o3P = derivedUpdate $ \ proj -> do { (phLname, ()) <- placeholder (\ ph -> ...); .... } src/examples.hs:1058:26: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat (Maybe Int64) Actual type: Projection Flat (Maybe GHC.Int.Int32) • In the second argument of ‘(|*|)’, namely ‘just (d ! Department.deptId')’ In the first argument of ‘(|*|)’, namely ‘Employee3 |$| value "Michael" |*| value "Smith" |*| unsafeSQLiteDayValue "2001-06-22" |*| just (d ! Department.deptId')’ In the first argument of ‘(|*|)’, namely ‘Employee3 |$| value "Michael" |*| value "Smith" |*| unsafeSQLiteDayValue "2001-06-22" |*| just (d ! Department.deptId') |*| value (Just "President")’ src/examples.hs:1060:26: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat (Maybe Int64) Actual type: Projection Flat (Maybe GHC.Int.Int32) • In the second argument of ‘(|*|)’, namely ‘just (b ! Branch.branchId')’ In the second argument of ‘($)’, namely ‘Employee3 |$| value "Michael" |*| value "Smith" |*| unsafeSQLiteDayValue "2001-06-22" |*| just (d ! Department.deptId') |*| value (Just "President") |*| just (b ! Branch.branchId')’ In a stmt of a 'do' block: return $ Employee3 |$| value "Michael" |*| value "Smith" |*| unsafeSQLiteDayValue "2001-06-22" |*| just (d ! Department.deptId') |*| value (Just "President") |*| just (b ! Branch.branchId') src/examples.hs:1067:29: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Pi Employee (Maybe Int64) Actual type: Pi Employee (Maybe GHC.Int.Int32) • In the second argument of ‘(|*|)’, namely ‘Employee.deptId'’ In the first argument of ‘(|*|)’, namely ‘Employee3 |$| Employee.fname' |*| Employee.lname' |*| Employee.startDate' |*| Employee.deptId'’ In the first argument of ‘(|*|)’, namely ‘Employee3 |$| Employee.fname' |*| Employee.lname' |*| Employee.startDate' |*| Employee.deptId' |*| Employee.title'’ src/examples.hs:1069:29: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Pi Employee (Maybe Int64) Actual type: Pi Employee (Maybe GHC.Int.Int32) • In the second argument of ‘(|*|)’, namely ‘Employee.assignedBranchId'’ In the expression: Employee3 |$| Employee.fname' |*| Employee.lname' |*| Employee.startDate' |*| Employee.deptId' |*| Employee.title' |*| Employee.assignedBranchId' In an equation for ‘piEmployee3’: piEmployee3 = Employee3 |$| Employee.fname' |*| Employee.lname' |*| Employee.startDate' |*| Employee.deptId' |*| Employee.title' |*| Employee.assignedBranchId' src/examples.hs:1111:26: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat (Maybe Int64) Actual type: Projection Flat (Maybe GHC.Int.Int32) • In the second argument of ‘(|*|)’, namely ‘d’ In the first argument of ‘(|*|)’, namely ‘Employee3 |$| value "Michael" |*| value "Smith" |*| unsafeSQLiteDayValue "2001-06-22" |*| d’ In the first argument of ‘(|*|)’, namely ‘Employee3 |$| value "Michael" |*| value "Smith" |*| unsafeSQLiteDayValue "2001-06-22" |*| d |*| value (Just "President")’ src/examples.hs:1113:26: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat (Maybe Int64) Actual type: Projection Flat (Maybe GHC.Int.Int32) • In the second argument of ‘(|*|)’, namely ‘b’ In the second argument of ‘($)’, namely ‘Employee3 |$| value "Michael" |*| value "Smith" |*| unsafeSQLiteDayValue "2001-06-22" |*| d |*| value (Just "President") |*| b’ In a stmt of a 'do' block: return $ Employee3 |$| value "Michael" |*| value "Smith" |*| unsafeSQLiteDayValue "2001-06-22" |*| d |*| value (Just "President") |*| b src/examples.hs:1147:28: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat (Maybe Int64) Actual type: Projection Flat (Maybe GHC.Int.Int32) • In the second argument of ‘(|*|)’, namely ‘just (d ! Department.deptId')’ In the first argument of ‘(|*|)’, namely ‘Employee3 |$| ph ! e4Fname' |*| ph ! e4Lname' |*| ph ! e4StartDate' |*| just (d ! Department.deptId')’ In the first argument of ‘(|*|)’, namely ‘Employee3 |$| ph ! e4Fname' |*| ph ! e4Lname' |*| ph ! e4StartDate' |*| just (d ! Department.deptId') |*| ph ! e4Title'’ src/examples.hs:1149:28: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat (Maybe Int64) Actual type: Projection Flat (Maybe GHC.Int.Int32) • In the second argument of ‘(|*|)’, namely ‘just (b ! Branch.branchId')’ In the second argument of ‘($)’, namely ‘Employee3 |$| ph ! e4Fname' |*| ph ! e4Lname' |*| ph ! e4StartDate' |*| just (d ! Department.deptId') |*| ph ! e4Title' |*| just (b ! Branch.branchId')’ In the expression: return $ Employee3 |$| ph ! e4Fname' |*| ph ! e4Lname' |*| ph ! e4StartDate' |*| just (d ! Department.deptId') |*| ph ! e4Title' |*| just (b ! Branch.branchId') src/examples.hs:1182:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|$|)’, namely ‘a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account4 |$| a ! Account.accountId'’ In the first argument of ‘(|*|)’, namely ‘Account4 |$| a ! Account.accountId' |*| a ! Account.custId'’ src/examples.hs:1183:25: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Projection Flat Int64 Actual type: Projection Flat GHC.Int.Int32 • In the second argument of ‘(|*|)’, namely ‘a ! Account.custId'’ In the first argument of ‘(|*|)’, namely ‘Account4 |$| a ! Account.accountId' |*| a ! Account.custId'’ In the first argument of ‘(|*|)’, namely ‘Account4 |$| a ! Account.accountId' |*| a ! Account.custId' |*| i ?! Individual.fname'’ src/examples.hs:1218:27: error: • Couldn't match type ‘GHC.Int.Int32’ with ‘Int64’ Expected type: Relation () (Maybe Int64, String) Actual type: Relation () (Maybe GHC.Int.Int32, String) • In the expression: relation $ do { c <- queryMaybe customer; b <- query business; on $ c ?! Customer.custId' .=. just (b ! Business.custId'); return (c ?! Customer.custId' >< b ! Business.name') } In an equation for ‘business_RightOuterJoin’: business_RightOuterJoin = relation $ do { c <- queryMaybe customer; b <- query business; on $ c ?! Customer.custId' .=. just (b ! Business.custId'); .... } cabal: Leaving directory '/tmp/cabal-tmp-28836/relational-record-examples-0.2.0.3' cabal: Error: some packages failed to install: relational-record-examples-0.2.0.3 failed during the building phase. The exception was: ExitFailure 1