Skip to content
  • Yuras's avatar
    fix misleading error message regarding function arity · 09b79433
    Yuras authored
    Summary:
    The error reports something like:
    
      The function ‘f’ is applied to three arguments,
      but its type ‘Int -> Float -> Char -> Bool’ has only three
    
    The original type was "Monad m => Int -> Float -> m Bool", but
    "m" was unified with "-> Char".
    
    Now it looks better:
    
      The function ‘f’ is applied to three arguments,
      its type is ‘Int -> Float -> m0 Bool’,
      it is specialized to ‘Int -> Float -> Char -> Bool’
    
    Test Plan: T9605
    
    Reviewers: simonpj, austin
    
    Reviewed By: austin
    
    Subscribers: carter, thomie
    
    Differential Revision: https://phabricator.haskell.org/D556
    
    GHC Trac Issues: #9605
    09b79433