dotnet / dotnet/roslyn

Null suppression breaks tuple element name inference

Open
#80,752 0 comments 0 reactions 1 assignee Claimed by @jcouv View on GitHub
Area-Compilers Feature - Nullable Reference Types Feature - Tuples
Dominant language
C#
Stars
20.7k
Forks
4.3k
PR merge metrics
PR metrics pending

Description

**Version Used**:
Latest VS 2022

**Steps to Reproduce**:
```cs
#nullable enable

var mc = new MyClass();
var tuple = (mc.MyProperty, mc.MyProperty1!);

Console.WriteLine(tuple.MyProperty);
Console.WriteLine(tuple.MyProperty1); // Nop, compiler error

public class MyClass
{
public string? MyProperty { get; set; }

public string? MyProperty1 { get; set; }
}
```
Removing `!` from the second tuple element fixes the issue.

**Expected Behavior**:
Null suppression should not break element name inference

**Actual Behavior**:
It does break things...

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.