<html>
    <head>
      <base href="https://llvm.org/bugs/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - clang incorrectly detects a circular template recursion where there is none"
   href="https://llvm.org/bugs/show_bug.cgi?id=23554">23554</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>clang incorrectly detects a circular template recursion where there is none
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Windows NT
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>C++11
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedclangbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>joel.hoener@gmail.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>dgregor@apple.com, llvmbugs@cs.uiuc.edu
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=14335" name="attach_14335" title="File containing code causing the problem">attachment 14335</a> <a href="attachment.cgi?id=14335&action=edit" title="File containing code causing the problem">[details]</a></span>
File containing code causing the problem

In the attached code clang seems to to be trying to resolve a template
recursion where there is actually none in line 12 (the return type declaration
using decltype). With MSVC12 (2013) and gcc4.9 the same code compiles without
any errors or warnings.

Workaround: Replacing the explicit decltype declaration with C++14's
decltype(auto) results in compilation without errors.

I tested this with clang3.6 on OSX and the 3.7 trunk version on Windows in MSVC
emulation mode with the same outcome.</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>