@@ -741,7 +741,7 @@ elab ist info emode opts fn tm
741741 ns <- apply (Var f) (map isph args)
742742-- trace ("ns is " ++ show ns) $ return ()
743743 -- mark any type class arguments as injective
744− mapM_ checkIfInjective (map snd ns)
744+ when (not pattern) $ mapM_ checkIfInjective (map snd ns)
745745 unifyProblems -- try again with the new information,
746746 -- to help with disambiguation
747747 ulog <- getUnifyLog