Skip to content

GenAPI generates incorrect class declarations for VB authored classes with extension methods #33042

Open
@mmitche

Description

@mmitche

Describe the Bug

Extension methods must exist in static partial classes. GenAPI instead generates sealed partial classes and includes a constructor which causes a compile time error.

Steps to Reproduce

  1. Generate Microsoft.CodeAnalysis.VisualBasic @ 4.0.1.
  2. Compile

Will see things like:

public sealed partial class VisualBasicExtensions
{
  internal VisualBasicExtensions() { }
  public static bool Any(this SyntaxTokenList list, VisualBasic.SyntaxKind kind) { throw null; }
  public static bool Any(this SyntaxTriviaList list, VisualBasic.SyntaxKind kind) { throw null; }
...

Should actually be:

public static partial class VisualBasicExtensions
{
  public static bool Any(this SyntaxTokenList list, VisualBasic.SyntaxKind kind) { throw null; }
  public static bool Any(this SyntaxTriviaList list, VisualBasic.SyntaxKind kind) { throw null; }
  ...

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions