roslyn icon indicating copy to clipboard operation
roslyn copied to clipboard

Extensions: follow-ups for metadata

Open jcouv opened this issue 10 months ago • 0 comments

This issue is referenced in source.

The list includes:

  • [ ] switch away from ordinals in skeleton type names
  • [ ] confirm on parameter ordinal used in EmitExpression.EmitParameterIdExpression
  • [ ] consider adding private constructor to extension skeleton types?
  • [ ] consider adding ExtensionAttribute to extension skeleton types even when no member method
  • [ ] consider optimizing lookup using presence of [Extension] attribute
  • [ ] User may apply attribute to set special name. We should honor that on the implementation method
  • [ ] Metadata: copying attributes (synthesized attributes like nullability? we copy some attributes from enclosing method to closure type, see previous work that implemented that)
  • [ ] Implementation methods should be considered implicitly declared
  • [ ] Manual testing with reflection
  • [ ] Ping known metadata consumers (SandCastle, decompilers)
  • [ ] Test ref-only assemblies (should already work, needs test)
  • [ ] Skeleton methods should throw NotSupportedException (currently using throw null)

Relates to test plan https://github.com/dotnet/roslyn/issues/76130

jcouv avatar Jun 13 '25 19:06 jcouv