<html>
    <head>
      <base href="http://llvm.org/bugs/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:richard-llvm@metafoo.co.uk" title="Richard Smith <richard-llvm@metafoo.co.uk>"> <span class="fn">Richard Smith</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - Behavior of "using" statement with template inheritance does not work as expected and differs from gcc."
   href="http://llvm.org/bugs/show_bug.cgi?id=15371">bug 15371</a>
        <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>NEW
           </td>
           <td>RESOLVED
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">CC</td>
           <td>
                
           </td>
           <td>richard-llvm@metafoo.co.uk
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Resolution</td>
           <td>---
           </td>
           <td>INVALID
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - Behavior of "using" statement with template inheritance does not work as expected and differs from gcc."
   href="http://llvm.org/bugs/show_bug.cgi?id=15371#c1">Comment # 1</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - Behavior of "using" statement with template inheritance does not work as expected and differs from gcc."
   href="http://llvm.org/bugs/show_bug.cgi?id=15371">bug 15371</a>
              from <span class="vcard"><a class="email" href="mailto:richard-llvm@metafoo.co.uk" title="Richard Smith <richard-llvm@metafoo.co.uk>"> <span class="fn">Richard Smith</span></a>
</span></b>
        <pre>This code is ill-formed, but a compiler is not required to issue a diagnostic
for it, so both compilers are correct.

For a redeclaration of a function template, the rule is that dependent portions
of the type must be 'equivalent' (that is, composed of the same sequence of
tokens interpreted the same way). In your case, the return type of the function
definition is 'functionally equivalent' to the return type of the declaration
(that is, it will always resolve to the same type) but is not equivalent, and
that makes your code ill-formed.

So, the -DPACIFY_CLANG code is correct. The -DPACIFY_CLANG_ANGER_GCC code is
ill-formed, for the same reason the original code is ill-formed, but in that
case, it's Clang which doesn't issue a diagnostic (as before, a compiler is not
required to diagnose this).</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>