dotnet / dotnet/csharpstandard
10.4.4.29 [definite assignment for] ?? expressions
- Lingua principale
- C#
- Stelle
- 815
- Fork
- 99
- Merge medio
- 1g 14h
- PR unite (30g)
- 16
Descrizione
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.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia con il caso di test C# fornito e con le regole attuali della specifica del linguaggio per definite assignment e le espressioni ??. Confronta il comportamento specificato con quello del compilatore, quindi determina le modifiche necessarie alla specifica affinché l'esempio venga accettato e superi.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- csharp
- Ambito
- compilers
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 25/100