title: Why does the standard library have a template<>?
body: <p>I saw code in the standard library where the template was declared but the typename was not specified.</p>
  <p><a href="https://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-4.2/cpp__type__traits_8h-source.html" rel="nofollow noreferrer">https://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-4.2/cpp__type__traits_8h-source.html</a></p>
  <pre class="lang-cpp prettyprint-override"><code>00211   template&lt;&gt;
  00212     struct __is_integer&lt;int&gt;
  00213     {
  00214       enum { __value = 1 };
  00215       typedef __true_type __type;
  00216     };
  </code></pre>
  <blockquote>
  <p>A name used in a template declaration or definition and that is dependent on a template-parameter is assumed not to name a type unless the applicable name lookup finds a type name or the name is qualified by the keyword typename.</p>
  </blockquote>
  <p>source: <a href="https://stackoverflow.com/questions/610245/where-and-why-do-i-have-to-put-the-template-and-typename-keywords">Where and why do I have to put the &quot;template&quot; and &quot;typename&quot; keywords?</a></p>
  <p>If this is the following, what is the use of this code? Why did they put in a template&lt;&gt; that you don't use?</p>