title: Why does const auto &p{nullptr} work while auto *p{nullptr} doesn't in C++17?
body: <p>This definition works:</p>
  
  <pre><code>const auto &amp;b{nullptr};
  </code></pre>
  
  <p>while this fails:</p>
  
  <pre><code>auto *b{nullptr};
  </code></pre>
  
  <p>I have tried to compile this in Visual C++, GCC, and Clang. They all complain "cannot deduce type".</p>
  
  <p>In the second case, shouldn't <code>b</code> be deduced to have some type like <code>std::nullptr_t</code>?</p>