Не секрет, что Microsoft достаточно давно работает над выпуском восьмой версии C#. В недавно состоявшемся релизе Visual Studio 2019 новая версия языка (C# 8.0) уже доступна, но пока ещё только в качестве beta релиза. В планах этой новой версии есть несколько возможностей, реализация которых может показаться не совсем очевидной, или точнее, не совсем ожидаемой. Одним из таких нововведений стала возможность использования Nullable Reference типов. Заявленным смыслом данного нововведения является борьба с Null Reference Exception'ами (NRE).
В анализаторе PVS-Studio для C# относительно недавно существенно расширились возможности по обнаружению в коде как раз тех самых NRE. Разработчики задались вопросом - а есть ли теперь смысл для статических анализаторов в целом, и для PVS-Studio в частности, пытаться искать потенциальные разыменования нулевых ссылок, если, по крайней мере в новом коде, использующем Nullable Reference, такие разыменования станут "невозможными"? Чтобы ответить на вопрос и подробнее разобрать эту тему была и написана следующая статья.
http://bit.ly/2Syj74Y