Closed
Description
I think it would be desirable to indicate why implicit search for a mirror fails.
tasks:
- in Synthesizer collect reasons for why synthesis fails (indicated by when a branch returns
EmptyTree
) - (whyNotGenericSum/whyNotGenericProduct) are good starts because they already generate error message strings that are later ignored. - add the collected errors to the implicit search failure message that is emitted in Implicits
ideas for implementation:
synthesizer.tryAll
returns a tuple of(Tree, List[String])
, where non-empty list indicates errors, then any errors are attached to theSearchFailureType
of the tree returned frominferImplicitArg