title: Can we have an anonymous struct as template argument?
body: <p>The title is pretty self-explanatory, but here's a simplified example:</p>
  
  <pre><code>#include &lt;cstdio&gt;
  
  template &lt;typename T&gt;
  struct MyTemplate {
  
      T member;
  
      void printMemberSize() {
          printf("%i\n", sizeof(T));
      }
  
  };
  
  int main() {
  
      MyTemplate&lt;struct { int a; int b; }&gt; t; // &lt;-- compiler doesn't like this
  
      t.printMemberSize();
  
      return 0;
  
  }
  </code></pre>
  
  <p>The compiler complains when I try to use an anonymous struct as a template argument.  What's the best way to achieve something like this without having to have a separate, named struct definition?</p>