This documentation is archived and is not being maintained.

Type arguments unexpected 

An Implements clause supplies type arguments for the interface member it is implementing.

The Implements clause should only identify the interface and member it is implementing. This means that if you are declaring a generic procedure, the Of clause and the type arguments should appear in the main part of the declaration, just as they would if you were not implementing an interface procedure.

The following code can generate this error.

Public Interface testInterface
    Sub testSub(Of t)()
End Interface
Public Class testClass
    Implements testInterface
    Public Sub testSub() Implements testInterface.testSub(Of t)()
    End Sub
End Class

The declaration preceding the Implements clause should look like the interface definition, except for the possible addition of access or procedure modifiers. The following code avoids the error.

    Public Sub testSub(Of t)() Implements testInterface.testSub

Error ID: BC32088

To correct this error

  • Remove the type argument list from the Implements clause.

  • If you are implementing a generic member of the interface, then put the type argument list in the main part of the declaration, preceding the Implements keyword.

See Also