Skip to content

VB SemanticModel fails to bind type argument inside cref even though compiler produces no error #2197

@shyamnamboodiripad

Description

@shyamnamboodiripad

The C# compiler (SemanticModel) correctly returns a TypeParameter symbol for the U in <see cref="C{U}"/> in the below example. I can validate this in the syntax visualizer (see below screenshot) and this also works via API (for example if I get symbol for C{U} and inspect its symbol.TypeArguments.
capture

For the corresponding case in VB, U does not bind (see below screenshot). If I get symbol for C(Of U) and inspect its symbol.TypeArguments, I get back a ErrorTypeSymbol.
capture2

Shouldn't the VB compiler be able to return a valid symbol in the above case (considering that the code didn't produce any errors)? Why do the two compilers behave differently here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area-CompilersBugConcept-APIThis issue involves adding, removing, clarification, or modification of an API.help wantedThe issue is "up for grabs" - add a comment if you are interested in working on it

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions