title: Template type deduction for char array
body: <pre><code>template&lt;typename T&gt;
  class X;
  
  int main() {
      X&lt;decltype("")&gt; x;
  }
  </code></pre>
  
  <p>Why does g++ deduce <code>T</code> as <code>const char (&amp;)[1]</code> and not simply <code>const char[1]</code>?</p>