@@ -57,9 +57,11 @@ findUnusedImports (Module _ _ _ mdecls mexports) env usedImps = do
5757 forM_ (mapMaybe getTypeRef declrefs) $ \(tn, c) -> do
5858 let allCtors = dctorsForType mni tn
5959 when (runProperName tn `elem` usedNames) $ case (c, null $ usedDctors `intersect` allCtors) of
60− (_, True) -> tell $ errorMessage $ UnusedDctorImport tn
61− (Just ctors, False) -> let ddiff = ctors \\ usedDctors
62− in unless (null ddiff) $ tell $ errorMessage $ UnusedDctorExplicitImport tn ddiff
60+ (Nothing, True) -> tell $ errorMessage $ UnusedDctorImport tn
61+ (Just (_:_), True) -> tell $ errorMessage $ UnusedDctorImport tn
62+ (Just ctors, _) ->
63+ let ddiff = ctors \\ usedDctors
64+ in unless (null ddiff) $ tell $ errorMessage $ UnusedDctorExplicitImport tn ddiff
6365 _ -> return ()
6466 return ()
6567