dotnet/roslyn

Analyzer Improvement for IDE0059

Ouverte

#55 960 ouverte le 27 août 2021

 (2 commentaires) (0 réaction) (0 personne assignée)C# (4 257 forks)batch import
Area-IDEFeature - IDE0059help wanted

Métriques du dépôt

Stars
 (20 414 étoiles)
Métriques de merge PR
 (Merge moyen 6j 17h) (256 PRs mergées en 30 j)

Description

Brief description: The following two variable declarations are equivalent and only vary based on coding style:

a? ret;

if(Condition){
  ret = new a(){ ... };
} else {
  ret = new a(){ ... };
}

AND

var ret = default(a?);

if(Condition){
  ret = new a(){ ... };
} else {
  ret = new a(){ ... };
}

Today, IDE0059 triggers if a variable is initialized with any value and then later reassigned. I suggest updating IDE0059 to trigger only if a variable is initialized to a non-default value and then later reassigned.

Languages applicable: C# any maybe VB.

Code example that the analyzer SHOULD report: Needlessly initializing to a non-default value.

Code example that the analyzer not report: See above

Guide contributeur