decltype(nullptr)
равно std::nullptr_t
.
, поэтому с
const auto &b{nullptr}; // auto is std::nullptr_t
// b is a reference to a temporary (with lifetime extension)
, но nullptr
НЕ является указателем (даже если он конвертируется в).
поэтому auto *b{nullptr};
недопустим.
Вы можете использовать вместо
auto b{nullptr}; // auto is std::nullptr_t