title: Using static functions of a base class without specifying parameters to avoid ambiguity
body: <p>Some of my base classes get tons of parameters. Now I want to specify which static function to use:</p>
  
  <pre><code>template &lt;typename... Types&gt;
  struct SBase {
      static void func() {
      }
  };
  
  struct A : public SBase&lt;int&gt; {
  };
  
  struct B : public A, public SBase&lt;int, double, short,
      unsigned int, float, unsigned char, long, unsigned long&gt; {
  
      // using SBase::func; // Not possible.
      // Horrible, but works.
      using SBase&lt;int, double, short,
      unsigned int, float, unsigned char, long, unsigned long&gt;::func;
  };
  </code></pre>
  
  <p>Aso you can see, I need to write the template parameters twice which leads to code duplication.</p>
  
  <p>Is there any way to get rid of it?</p>