title: Using alias for reference to anonymous structure results in error
body: <p>My theory is that gcc has a bug. The following compiles in both clang and gcc:</p>
  
  <pre><code>using type = const struct {}&amp;;
  </code></pre>
  
  <p>But now when I change it to an rvalue reference it compiles with clang but not with gcc:</p>
  
  <pre><code>using type = const struct {}&amp;&amp;;
  
  // main.cpp:8:17: error: expected ';' after struct definition
  //  typedef struct {}&amp;&amp; type;
  //                  ^
  // main.cpp:8:17: error: missing type-name in typedef-declaration
  // main.cpp:8:22: error: expected constructor, destructor, or type conversion before ';' token
  //  typedef const struct {}&amp;&amp; type;
  //                                ^
  </code></pre>
  
  <p>It fails with the <code>typedef</code> version as well with the same error:</p>
  
  <pre><code>typedef const struct {}&amp;&amp; type;
  </code></pre>
  
  <p>Why does this fail to compile in gcc? Is this an issue with the standard or a bug?</p>