You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jul 15, 2023. It is now read-only.
Any iterator methods which are explicitly implemented from an interface, and the interface contains multiple generic type arguments, causes a "Could not resolve type reference" error in the re-writer when built in Visual Studio 2015.
For example:
fails with Could not resolve type reference: [TestContracts]TestContracts.TestYield.<System-Collections-Generic-IEnumerable<System-Collections-Generic-KeyValuePair<System-Int32\,System-Int32>>-GetEnumerator>d__0.
The root cause of this is the type name parser used by the re-writer to read attributes does not support reading type names with escaped characters. The Rosyln compiler is adding an IteratorStateMachineAttribute to the method pointing to a type with the name <System-Collections-Generic-IEnumerable<System-Collections-Generic-KeyValuePair<System-Int32,System-Int32>>-GetEnumerator>d__0, and the comma in the generic arguments gets escaped with a backslash in the IL.