Попытался было исправить баг
1229 а также попробовать решить проблему с выбором констроктора атрибутов (сейчас например нельзя навесить атрибут System.ComponentModel.DefaultValueAttribute).
В обоих случаях проблемный код не использует стандартный алгоритм выбора перегрузок (тот что сворачивает список экземпляорв OverloadPossibility).
В случае с выбором op_Implicit сворачивается список IMethod-ов (GetBestOverloads1) и не контролируются ограничения на генерики, а в случае конструктора атрибутов вообще написан какой-то костыль непонятный.
Внимание, вопрос: как связаны между собой Solver и OverloadPossibility?