There is a situation in which the current common-type algorithm results are counter-intuitive, and results in the programmer adding what feels like a redundant cast to the code. With this change, an expression such as `condition ? 1 : null` would result in a value of type `int?`.
We modify the specification for [finding the best common type of a set of expressions](https://github.com/dotnet/csharplang/blob/master/spec/expressions.md#finding-the-best-common-type-of-a-set-of-expressions) to affect the following situation:
- inferring the [return type of a lambda](https://github.com/dotnet/csharplang/blob/master/spec/expressions.md#inferred-return-type) for type inference
## Drawbacks
[drawbacks]: #drawbacks
There may be some incompatibilities introduced by this proposal.
## Alternatives
[alternatives]: #alternatives
None.
## Unresolved questions
[unresolved]: #unresolved-questions
- [ ] What is the severity of incompatibility introduced by this proposal, and how can it be moderated?