dotnet/roslyn

Rename symbol misses symbol used in invalid assignment

Open

#67.665 aberto em 6 de abr. de 2023

Ver no GitHub
 (1 comment) (0 reactions) (0 assignees)C# (4.257 forks)batch import
Area-IDEFeature - Renamehelp wanted

Métricas do repositório

Stars
 (20.414 stars)
Métricas de merge de PR
 (Mesclagem média 6d 17h) (256 fundiu PRs em 30d)

Description

Version Used: Version 17.7.0 Preview 1.0 [33604.490.main]

Steps to Reproduce:

class C
{
    private static readonly object _f;

    public C()
    {
        _f = new();
    }
}

Attempting to rename _f fails to rename the occurrence in the constructor. Admitted that occurrence is invalid (cannot assign to readonly static) but Go to definition and Find all references both resolve the usage, so rename should too.

My larger use case here was converting a field from local to static. I added static then had a diagnostic to update the name due to naming convention. It renamed the field to s_f but not the usage. Further investigation revealed the issue applies to manual renames too.

Guia do colaborador