dotnet/roslyn

Spurious use of unassigned variable error with unimplemented partial

Ouverte

#45 875 ouverte le 10 juil. 2020

 (1 commentaire) (0 réaction) (0 personne assignée)C# (4 257 forks)batch import
Area-CompilersBugConcept-Diagnostic Clarityhelp 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

public partial class C {
    public partial string M1(string dummyParam, out bool i); // error CS8795: Partial method 'C.M1(string, out bool)' must have an implementation part because it has accessibility modifiers.
    
    public void M2(C c)
    {
        c.M1(null, out bool i);
        _ = i.ToString(); // error CS0165: Use of unassigned local variable 'i'
    }
}

Since this partial method must have an implementation (and we already error on it), we could suppress the error on the use of the unassigned variable.

Guide contributeur