type error: can not unify FrameBuffer _b _a with Float in testdata/record01.reject.lc:26:15: in ScreenOut record.fieldA ^^^^^^ ------------ trace !type error: can not unify FrameBuffer _b _a with Float in testdata/record01.reject.lc:26:15: in ScreenOut record.fieldA ^^^^^^ ------------ tooltips 2:16-2:21 (BlendEquation, BlendEquation) -> ((BlendingFactor, BlendingFactor), (BlendingFactor, BlendingFactor)) -> Vec 4 Float -> Blending Float 2:16-2:23 ((BlendingFactor, BlendingFactor), (BlendingFactor, BlendingFactor)) -> Vec 4 Float -> Blending Float 2:16-2:81 Vec 4 Float -> Blending Float 2:16-2:102 Blending Float 2:22-2:23 _b 2:24-2:81 ((BlendingFactor, BlendingFactor), (BlendingFactor, BlendingFactor)) 2:25-2:52 (BlendingFactor, BlendingFactor) 2:26-2:34 BlendingFactor 2:35-2:51 BlendingFactor | ((BlendingFactor)) 2:53-2:80 (BlendingFactor, BlendingFactor) | (((BlendingFactor, BlendingFactor))) 2:54-2:62 BlendingFactor 2:63-2:79 BlendingFactor | ((BlendingFactor)) 2:83-2:85 forall a . a -> a -> a -> a -> VecS a 4 2:83-2:89 Float -> Float -> Float -> VecS Float 4 2:83-2:93 Float -> Float -> VecS Float 4 2:83-2:97 Float -> VecS Float 4 2:83-2:101 VecS Float 4 2:86-2:89 Float 2:90-2:93 Float 2:94-2:97 Float 2:98-2:101 Float 3:13-3:21 (BlendEquation, BlendEquation) -> Blending Float 3:13-3:39 Blending Float 3:22-3:39 (BlendEquation, BlendEquation) 3:23-3:30 BlendEquation 3:31-3:38 BlendEquation | ((BlendEquation)) 4:11-4:16 (BlendEquation, BlendEquation) -> ((BlendingFactor, BlendingFactor), (BlendingFactor, BlendingFactor)) -> Vec 4 Float -> Blending Float 4:11-4:34 ((BlendingFactor, BlendingFactor), (BlendingFactor, BlendingFactor)) -> Vec 4 Float -> Blending Float 4:11-4:92 Vec 4 Float -> Blending Float 4:11-4:113 Blending Float 4:17-4:34 (BlendEquation, BlendEquation) 4:18-4:25 BlendEquation 4:26-4:33 BlendEquation | ((BlendEquation)) 4:35-4:92 ((BlendingFactor, BlendingFactor), (BlendingFactor, BlendingFactor)) 4:36-4:63 (BlendingFactor, BlendingFactor) 4:37-4:45 BlendingFactor 4:46-4:62 BlendingFactor | ((BlendingFactor)) 4:64-4:91 (BlendingFactor, BlendingFactor) | (((BlendingFactor, BlendingFactor))) 4:65-4:73 BlendingFactor 4:74-4:90 BlendingFactor | ((BlendingFactor)) 4:94-4:96 forall a . a -> a -> a -> a -> VecS a 4 4:94-4:100 Float -> Float -> Float -> VecS Float 4 4:94-4:104 Float -> Float -> VecS Float 4 4:94-4:108 Float -> VecS Float 4 4:94-4:112 VecS Float 4 4:97-4:100 Float 4:101-4:104 Float 4:105-4:108 Float 4:109-4:112 Float 5:12-5:22 forall a . Blending a 6:13-6:15 forall a . a -> a -> a -> a -> VecS a 4 6:13-6:19 Float -> Float -> Float -> VecS Float 4 6:13-6:23 Float -> Float -> VecS Float 4 6:13-6:27 Float -> VecS Float 4 6:13-6:31 VecS Float 4 6:16-6:19 Float 6:20-6:23 Float 6:24-6:27 Float 6:28-6:31 Float 7:14-7:16 forall a . a -> a -> a -> a -> VecS a 4 7:14-7:20 Float -> Float -> Float -> VecS Float 4 7:14-7:24 Float -> Float -> VecS Float 4 7:14-7:28 Float -> VecS Float 4 7:14-7:32 VecS Float 4 7:17-7:20 Float 7:21-7:24 Float 7:25-7:28 Float 7:29-7:32 Float 8:23-8:34 forall (a :: [Type]) . sameLayerCounts a => HList a -> FrameBuffer (ImageLC (head a)) (map GetImageKind a) 8:23-8:75 FrameBuffer 1 (map GetImageKind ' [Image 1 'Depth, Image 1 ('Color (VecScalar 4 Float))]) 8:35-8:75 (Image 1 'Depth, Image 1 ('Color (VecScalar 4 Float))) 8:36-8:47 Float -> Image 1 'Depth 8:36-8:54 Image 1 'Depth 8:48-8:54 Float 8:55-8:66 forall (a :: Nat) b c . (Num b, c ~ VecScalar a b) => c -> Image 1 ('Color c) 8:55-8:74 Image 1 ('Color (VecScalar 4 Float)) | ((Image 1 ('Color (VecScalar 4 Float)))) 8:67-8:74 VecS Float 4 9:23-9:34 forall a . Float -> PolygonMode a 9:23-9:39 PolygonMode _a 9:35-9:39 Float 10:23-10:34 forall a . PolygonMode a 11:23-11:35 forall a . PointSize a -> PolygonMode a 11:23-11:52 PolygonMode _a 11:37-11:46 forall a . Float -> PointSize a 11:37-11:51 PointSize _a 11:47-11:51 Float 12:10-12:18 CullMode 13:11-13:20 CullMode 14:23-14:34 forall a . CullMode -> PolygonMode a -> PolygonOffset -> ProvokingVertex -> RasterContext a 'Triangle 14:23-14:39 PolygonMode _a -> PolygonOffset -> ProvokingVertex -> RasterContext _a 'Triangle 14:23-14:49 PolygonOffset -> ProvokingVertex -> RasterContext _a 'Triangle 14:23-14:58 ProvokingVertex -> RasterContext _a 'Triangle 14:23-14:70 RasterContext _a 'Triangle 14:35-14:39 CullMode 14:40-14:49 forall a . PolygonMode a 14:50-14:58 PolygonOffset 14:59-14:70 ProvokingVertex 15:23-15:42 forall a . a -> a 15:23-15:102 (FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))) 15:43-15:102 (FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))) 15:44-15:51 ComparisonFunction -> Bool -> FragmentOperation 'Depth 15:44-15:56 Bool -> FragmentOperation 'Depth 15:44-15:61 FragmentOperation 'Depth 15:52-15:56 ComparisonFunction 15:57-15:61 Bool 15:63-15:70 forall a (b :: Nat) . Num a => Blending a -> VecScalar b Bool -> FragmentOperation ('Color (VecScalar b a)) 15:63-15:76 VecScalar _b Bool -> FragmentOperation ('Color (VecScalar _b Float)) 15:63-15:101 FragmentOperation ('Color (VecScalar 4 Float)) | ((FragmentOperation ('Color (VecScalar 4 Float)))) 15:71-15:76 Blending Float 15:78-15:80 forall a . a -> a -> a -> a -> VecS a 4 15:78-15:85 Bool -> Bool -> Bool -> VecS Bool 4 15:78-15:90 Bool -> Bool -> VecS Bool 4 15:78-15:95 Bool -> VecS Bool 4 15:78-15:100 VecS Bool 4 15:81-15:85 Bool 15:86-15:90 Bool 15:91-15:95 Bool 15:96-15:100 Bool 16:23-16:30 forall a . String -> a 16:23-16:36 _a 16:31-16:36 String 16:40-16:43 Nat -> Nat -> Type -> Type 16:40-16:45 Nat -> Type -> Type 16:40-16:47 Type -> Type 16:40-16:53 Type 16:44-16:45 _b 16:46-16:47 _b 16:48-16:53 Type 17:27-17:61 (VecS Float 4, VecS Float 4) | (VecS Float 4, VecS Float 4) 17:28-17:41 forall (a :: Nat) (b :: Nat) c . Mat a b c -> Vec b c -> Vec a c 17:28-17:55 Vec 4 Float -> Vec 4 Float 17:28-17:57 Vec 4 Float 17:42-17:55 Mat 4 4 Float 17:56-17:57 _g 17:59-17:60 VecS Float 4 | ((VecS Float 4)) 18:23-18:28 forall (a :: PrimitiveType) (b :: [Type]) . String -> HList b -> PrimitiveStream a (HList b) 18:23-18:37 HList _a -> PrimitiveStream _b (HList _a) 18:23-18:79 PrimitiveStream _a ((Vec 4 Float)) 18:29-18:37 String 18:39-18:48 forall a . String -> a 18:39-18:59 _a 18:39-18:78 ((Vec 4 Float)) 18:49-18:59 String 18:63-18:78 Type 18:65-18:68 Nat -> Type -> Type 18:65-18:70 Type -> Type 18:65-18:76 Type | [Type] 18:69-18:70 _b 18:71-18:76 Type 19:23-19:36 forall a b (c :: PrimitiveType) . (a -> b) -> [Primitive a c] -> [Primitive b c] 19:23-19:49 [Primitive ((VecS Float 4)) _a] -> [Primitive (VecS Float 4, VecS Float 4) _a] 19:23-19:62 [Primitive (VecS Float 4, VecS Float 4) _a] 19:37-19:49 ((VecS Float 4)) -> (VecS Float 4, VecS Float 4) 19:50-19:62 forall (a :: PrimitiveType) . PrimitiveStream a ((Vec 4 Float)) 20:23-20:42 forall (a :: [Type]) (b :: PrimitiveType) . RasterContext (HList (Vec 4 Float : a)) b -> HList (map Interpolated a) -> [Primitive (HList (Vec 4 Float : a)) b] -> [Vector 1 (Maybe (SimpleFragment (HList a)))] 20:23-20:52 HList (map Interpolated _a) -> [Primitive (HList (Vec 4 Float : _a)) 'Triangle] -> [Vector 1 (Maybe (SimpleFragment (HList _a)))] 20:23-20:63 [Primitive (HList (Vec 4 Float : _d)) 'Triangle] -> [Vector 1 (Maybe (SimpleFragment (HList _d)))] 20:23-20:79 [Vector 1 (Maybe (SimpleFragment ((VecS Float 4))))] 20:43-20:52 forall a . RasterContext a 'Triangle 20:53-20:63 ((Interpolated _c)) 20:55-20:61 forall a . Floating a => Interpolated a 20:64-20:79 forall (a :: PrimitiveType) . [Primitive (VecS Float 4, VecS Float 4) a] 21:33-21:55 ((VecS Float 4)) | ((VecS Float 4)) 21:35-21:37 forall a . a -> a -> a -> a -> VecS a 4 21:35-21:41 Float -> Float -> Float -> VecS Float 4 21:35-21:45 Float -> Float -> VecS Float 4 21:35-21:49 Float -> VecS Float 4 21:35-21:53 VecS Float 4 21:38-21:41 Float 21:42-21:45 Float 21:46-21:49 Float 21:50-21:53 Float 22:33-22:67 ((VecS Float 4)) | ((VecS Float 4)) 22:35-22:42 forall a . Num (MatVecScalarElem a) => a -> a -> a 22:35-22:44 _i -> _i 22:35-22:65 VecS Float 4 22:43-22:44 _j 22:46-22:48 forall a . a -> a -> a -> a -> VecS a 4 22:46-22:52 Float -> Float -> Float -> VecS Float 4 22:46-22:56 Float -> Float -> VecS Float 4 22:46-22:60 Float -> VecS Float 4 22:46-22:64 VecS Float 4 22:49-22:52 Float 22:53-22:56 Float 22:57-22:60 Float 22:61-22:64 Float 23:23-23:33 forall (a :: Nat) (b :: [Type]) c . HList b -> (c -> HList (imageType' (map FragmentOperationKind b))) -> [Vector a (Maybe (SimpleFragment c))] -> FrameBuffer a (map FragmentOperationKind b) -> FrameBuffer a (map FragmentOperationKind b) 23:23-23:45 (_a -> HList (imageType' (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]))) -> [Vector _b (Maybe (SimpleFragment _a))] -> FrameBuffer _b (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]) -> FrameBuffer _b (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]) 23:23-23:60 [Vector _a (Maybe (SimpleFragment ((VecS Float 4))))] -> FrameBuffer _a (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]) -> FrameBuffer _a (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]) 23:23-23:75 FrameBuffer 1 (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]) -> FrameBuffer 1 (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]) 23:23-23:83 FrameBuffer 1 (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]) 23:34-23:45 (FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))) 23:46-23:60 ((VecS Float 4)) -> ((VecS Float 4)) 23:61-23:75 [Vector 1 (Maybe (SimpleFragment ((VecS Float 4))))] 23:76-23:83 FrameBuffer 1 (map GetImageKind ' [Image 1 'Depth, Image 1 ('Color (VecScalar 4 Float))]) 24:12-24:58 RecordC ' ['RecItem "fieldA" Float , 'RecItem "fieldB" (FrameBuffer 1 (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))])) , 'RecItem "fieldC" ((BlendEquation, BlendEquation) -> Blending Float)] 24:13-24:19 String | RecItem 24:13-24:47 [RecItem] 24:21-24:24 Float 24:21-24:57 HList (Float : recItemType ('RecItem "fieldB" (FrameBuffer 1 (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]))) : map recItemType ' ['RecItem "fieldC" ((BlendEquation, BlendEquation) -> Blending Float)]) 24:26-24:32 String | RecItem 24:26-24:47 [RecItem] 24:34-24:39 FrameBuffer 1 (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]) 24:34-24:57 HList (FrameBuffer 1 (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))]) : recItemType ('RecItem "fieldC" ((BlendEquation, BlendEquation) -> Blending Float)) : map recItemType ' []) 24:41-24:47 String | RecItem | [RecItem] 24:49-24:57 (BlendEquation, BlendEquation) -> Blending Float | (((BlendEquation , BlendEquation) -> Blending Float)) 25:11-25:17 RecordC ' ['RecItem "fieldA" Float , 'RecItem "fieldB" (FrameBuffer 1 (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))])) , 'RecItem "fieldC" ((BlendEquation, BlendEquation) -> Blending Float)] 25:11-25:24 _b 25:18-25:24 String 26:5-26:14 forall (a :: Nat) (b :: [ImageKind]) . FrameBuffer a b -> Output 26:15-26:21 RecordC ' ['RecItem "fieldA" Float , 'RecItem "fieldB" (FrameBuffer 1 (map FragmentOperationKind ' [FragmentOperation 'Depth, FragmentOperation ('Color (VecScalar 4 Float))])) , 'RecItem "fieldC" ((BlendEquation, BlendEquation) -> Blending Float)] 26:15-26:28 _b 26:22-26:28 String