@@ -137,8 +137,8 @@ instance Arbitrary v => Arbitrary (T.Type v) where
137137 T.Var _ ->
138138 []
139139
140− T.Aliased v t ->
141− t : (T.Aliased v <$> shrink t)
140+ T.Aliased name tvars rootType ->
141+ rootType : (T.Aliased name <$> shrinkList shrinkPair tvars <*> shrink rootType)
142142
143143 T.Type name ->
144144 T.Type <$> shrink name
@@ -152,14 +152,14 @@ instance Arbitrary v => Arbitrary (T.Type v) where
152152 record =
153153 case extension of
154154 Nothing ->
155− T.Record <$> shrinkList shrinkField fields <*> pure Nothing
155+ T.Record <$> shrinkList shrinkPair fields <*> pure Nothing
156156
157157 Just _ ->
158− do fields' <- filter (not . null) $ shrinkList shrinkField fields
158+ do fields' <- filter (not . null) $ shrinkList shrinkPair fields
159159 return $ T.Record fields' extension
160−
161− shrinkField (name, tipe) =
162− (,) <$> consAndShrink name <*> shrink tipe
160+ where
161+ shrinkPair (name, tipe) =
162+ (,) <$> consAndShrink name <*> shrink tipe
163163
164164
165165lowVar :: Gen String