dotnet/roslyn

VB: No compiler API to get built in-operator of AssignmentStatement

Open

#6,366 opened on 2015年10月27日

GitHub で見る
 (0 comments) (0 reactions) (0 assignees)C# (20,414 stars) (4,257 forks)batch import
Area-CompilersConcept-APIFeature Requesthelp wanted

説明

While we can use GetSymbolInfo to retrieve the built-in operator used in an expression, we currently lack an API to retrieve the built-in operator used in a VB assignment statement. This results in analysis problems like the one causing #2560. Additionally, VB IDE features work inconsistently because built-in operators can't always be retrieved from the compiler APIs.

Module Program
    Sub Main()
        Dim x As Integer
        x = x + 1
        x += 1
    End Sub
End Module

In the code above, if the user hovers over + in the first assignment statement, they'll see the built-in operator in the Quick Info tooltip:

image

However, there's no tooltip if they hover over +=.

This is in contrast to C#. In C#, because assignments are expressions, GetSymbolInfo can return the built-in operator for each case:

image

image

コントリビューターガイド

VB: No compiler API to get built in-operator of AssignmentStatement · dotnet/roslyn#6366 | Good First Issue