title: Is using 'decltype' in the declaration of pointer to member valid?
body: <p>Imagine for some strange reason I write this:</p>
  
  <pre><code>int main()
  {
      struct S
      {        
          int i;
      } var;
  
  
      int decltype(var)::* pint = &amp;decltype(var)::i;
  }
  </code></pre>
  
  <p><a href="http://melpon.org/wandbox/permlink/L8Yyiofi3IjoALEE" rel="noreferrer">GCC</a> seems to compile it fine although <a href="http://melpon.org/wandbox/permlink/DzztvqwWG1AVRrUK" rel="noreferrer">Clang</a> fails with some indeterminate syntax-related error message.</p>
  
  <p>So what does the holy ISO paper says about this - is this valid or not?</p>