Skip to content
  • Iustin Pop's avatar
    Re-enable standard hlint warnings · 2cdaf225
    Iustin Pop authored
    Commit 5a1e31b4
    
     (Add infrastructure for, and two extra hlint rules)
    was intended to add two *extra* hlint rules, but I didn't realise at
    that time that "--hint" when first used overrides the built-in
    lints. As such, since then we were basically running with just those
    two rules, which resulted in many uncaught warnings/errors.
    
    This patch fixes that (by importing the standard lint rules in our
    custom hints file), and then goes to fix all the warnings that a
    current hlint gives me. Compared to our current style, we have just a
    few additions:
    
    - zipWithM instead of map foo . zip …
    - 'exitSuccess' instead of 'exitWith ExitSuccess'
    - more uses of '.'
    
    Additionally, we have to silence a case where hlint doesn't realise
    why we are using '\e -> const (return False (e :: IOError)' instead of
    just '\e -> return False' or even 'const (return False').
    
    One warning that is generated by hlint ("Use void") can't be fixed
    until we deprecate GHC 6.x, as only GHC 7 has the 'void' function in
    Control.Monad.
    
    Signed-off-by: default avatarIustin Pop <iustin@google.com>
    Reviewed-by: default avatarAgata Murawska <agatamurawska@google.com>
    2cdaf225