dotnet / dotnet/csharpstandard
10.4.4.29 [definite assignment for] ?? expressions
- Vorherrschende Sprache
- C#
- Sterne
- 815
- Forks
- 99
- Ø Merge
- 1 T. 14 Std.
- Gemergte PRs (30 T.)
- 16
Beschreibung
The following test case should “pass” to match compilers:
``` cs
using System;
static class Program
{
static void Main()
{
const string x = "pass";
string y;
string z = x ?? y;
Console.WriteLine(z);
}
}
```
However, this is not justified by the current language specification. I recommend we modify the specification to allow this.
Beitragsleitfaden
Rechercherichtung
Beginne mit dem bereitgestellten C#-Testfall und den aktuellen Regeln der Sprachspezifikation für definite assignment und ??-Ausdrücke. Vergleiche das spezifizierte Verhalten mit dem Verhalten des Compilers und ermittle anschließend die für das Beispiel erforderlichen Änderungen an der Spezifikation, damit es akzeptiert wird und erfolgreich ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- csharp
- Bereich
- compilers
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 25/100