• simonpj's avatar
    [project @ 2003-06-20 11:14:18 by simonpj] · 1f861358
    simonpj authored
    ------------------------------
    	Fix a small quantification bug
    	------------------------------
    
    We were quantifying over too few type variables, because fdPredsOfInsts was
    being too eager to discard predicates. This only affects rather obscure
    programs.  Here's the one Iavor found:
    
    	class C a b where f :: a -> b
    	g x = fst (f x)
    
    We want to get the type
       	g :: forall a b c.  C a (b,c) => a -> b
    but GHC 6.0 bogusly gets
       	g :: forall a b.  C a (b,()) => a -> b
    
    A test is in should_compile/tc168
    1f861358