```c# using System; class C { static T F<T>(Func<T> f) { throw null; } static void G(object? o) { F(() => o).ToString(); // warning: maybe null if (o == null) return; F(() => o).ToString(); // no warning } } ``` See [LDM-2018-06-04](https://github.com/dotnet/csharplang/blob/master/meetings/2018/LDM-2018-06-04.md#nullable-flow-analysis)