dotnet/roslyn

Unclear error message for pointer types in pattern matching

Offen

#43.339 geöffnet am 14.04.2020

 (0 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)C# (4.257 Forks)batch import
Area-CompilersConcept-Diagnostic ClarityFeature - Pattern Matchinghelp wanted

Repository-Metriken

Stars
 (20.414 Sterne)
PR-Merge-Metriken
 (Durchschn. Merge 6T 17h) (256 gemergte PRs in 30 T)

Beschreibung

unsafe class C
{
    static void Main()
    {
        int* ptr = null;
        _ = ptr is var (x); // error CS8521: Pattern-matching is not permitted for pointer types.
        _ = ptr is var y; // valid code
    }
}

The error message shown above doesn't mention anything about parenthesized patterns, despite the fact that that's the only difference between those two lines. We can make this clearer.

Contributor Guide