Add special case to reference manager for WinMD compilations
When using WinMD projects in the IDE it is easy to run into a situation where a project references a project and an assembly and the project also references the assembly. For example, a C# compilation C1 references a C# WinMD project C2 and a .winmd assembly W1. W1 also references C2. When binding these references for C1 we hit a problem -- because the ContentType of a compilation in Roslyn is always Default (the compiler emits .winmdobjs, which are later turned into .winmds by winmdexp, the metadata reference from W1 to C2 will never unify (different ContentTypes). This change modifies the reference manager to do a special check for this case and see if we are using a winmdobj compilation and, if so, correctly unify the reference and the definition.
Showing
文件已添加
想要评论请 注册 或 登录