<html>
    <head>
      <base href="http://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 --- - Diagnostic doesn't include interesting template instantiation location"
   href="http://llvm.org/bugs/show_bug.cgi?id=20452">20452</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Diagnostic doesn't include interesting template instantiation location
          </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>All
          </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++
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>nicolasweber@gmx.de
          </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>I got this diagnostic:

..\..\third_party\WebKit\Source\wtf/PassRefPtr.h(57,16) :  error(clang): member
access into incomplete type 'blink::SQLTransactionBackend'
            ptr->deref();
               ^
..\..\third_party\WebKit\Source\wtf/RefPtr.h(59,35) :  note(clang): in
instantiation of function template specialization
'WTF::derefIfNotNull<blink::SQLTransactionBackend>' requested here
        ALWAYS_INLINE ~RefPtr() { derefIfNotNull(m_ptr); }
                                  ^
..\..\third_party\WebKit\Source\wtf/Vector.h(64,23) :  note(clang): in
instantiation of member function
'WTF::RefPtr<blink::SQLTransactionBackend>::~RefPtr' requested here
                cur->~T();
                      ^
..\..\third_party\WebKit\Source\wtf/Vector.h(247,69) :  note(clang): in
instantiation of member function 'WTF::VectorDestructor<true,
WTF::RefPtr<blink::SQLTransactionBackend> >::destruct' requested here
            VectorDestructor<VectorTraits<T>::needsDestruction,
T>::destruct(begin, end);
                                                                    ^
..\..\third_party\WebKit\Source\wtf/Deque.h(250,29) :  note(clang): in
instantiation of member function
'WTF::VectorTypeOperations<WTF::RefPtr<blink::SQLTransactionBackend>
<span class="quote">>::destruct' requested here</span >
            TypeOperations::destruct(m_buffer.buffer() + m_start,
m_buffer.buffer() + m_end);
                            ^
..\..\third_party\WebKit\Source\wtf/Deque.h(270,13) :  note(clang): in
instantiation of member function
'WTF::Deque<WTF::RefPtr<blink::SQLTransactionBackend>, 0,
WTF::DefaultAllocator>::destroyAll' requested here
            destroyAll();
            ^
..\..\third_party\WebKit\Source\wtf/Vector.h(519,64) :  note(clang): in
instantiation of member function
'WTF::Deque<WTF::RefPtr<blink::SQLTransactionBackend>, 0,
WTF::DefaultAllocator>::finalize' requested here
        ~VectorDestructorBase() { static_cast<Derived*>(this)->finalize(); }
                                                               ^
..\..\third_party\WebKit\Source\wtf/Deque.h(46,11) :  note(clang): in
instantiation of member function
'WTF::VectorDestructorBase<WTF::Deque<WTF::RefPtr<blink::SQLTransactionBackend>,
0, WTF::DefaultAllocator>, WTF::RefPtr<blink::SQLTransactionBackend>, false,
false>::~VectorDestructorBase' requested here
    class Deque : public VectorDestructorBase<Deque<T, inlineCapacity,
Allocator>, T, (inlineCapacity > 0), Allocator::isGarbageCollected> {
          ^
..\..\third_party\WebKit\Source\modules/webdatabase/DatabaseBackendBase.h(96,18)
:  note(clang): forward declaration of 'blink::SQLTransactionBackend'
    friend class SQLTransactionBackend;
                 ^
1 error generated.


I think the fix is to make the destructor of a class explicit that isn't
mentioned in the diagnostic at all (the class that has a
Deque<SQLTransactionBackend> as member).</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>