<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 --- - Assertion failed: (m_base_dwarf_cu->GetOffset() == die_ref.cu_offset), function GetDIE, file src/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp, line 120"
   href="https://llvm.org/bugs/show_bug.cgi?id=31245">31245</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Assertion failed: (m_base_dwarf_cu->GetOffset() == die_ref.cu_offset), function GetDIE, file src/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp, line 120
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>lldb
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

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

        <tr>
          <th>OS</th>
          <td>Linux
          </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>All Bugs
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>lldb-dev@lists.llvm.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>richard-llvm@metafoo.co.uk
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Was debugging clang trunk with lldb trunk, when...

(lldb) f 5
frame #5: clang`clang::canCalleeThrow(S=0x00000000093e3bf0,
E=0x0000000009418930, D=0x00000000093ed2b8) at SemaExceptionSpec.cpp:968
   965          T = Op->getRHS()->getType()
   966                ->castAs<MemberPointerType>()->getPointeeType();
   967        } else {
-> 968          T = cast<MemberExpr>(E)->getMemberDecl()->getType();
   969        }
   970      }
   971    } else if (const ValueDecl *VD = dyn_cast_or_null<ValueDecl>(D))
(lldb) p E->dump()
Assertion failed: (m_base_dwarf_cu->GetOffset() == die_ref.cu_offset), function
GetDIE, file
src/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp, line 120
backtrace leading to the failure:
#0 0x00007f01f1ed0b68 llvm::sys::PrintStackTrace(llvm::raw_ostream&)
src/lib/Support/Unix/Signals.inc:402:13
#1 0x00007f01f009cfca lldb_private::lldb_assert(bool, char const*, char const*,
char const*, unsigned int) src/tools/lldb/source/Utility/LLDBAssert.cpp:30:5
#2 0x00007f01f00e384d SymbolFileDWARFDwo::GetDIE(DIERef const&)
src/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp:121:10
#3 0x00007f01f00d3b65
SymbolFileDWARF::CompleteType(lldb_private::CompilerType&)
src/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp:1408:24
#4 0x00007f01f002179e
lldb_private::Type::ResolveClangType(lldb_private::Type::ResolveStateTag)
src/tools/lldb/source/Symbol/Type.cpp:563:7
#5 0x00007f01f00217f3 lldb_private::CompilerType::IsValid() const
src/tools/lldb/include/lldb/Symbol/CompilerType.h:75:40
#6 0x00007f01f00217f3
lldb_private::Type::ResolveClangType(lldb_private::Type::ResolveStateTag)
src/tools/lldb/source/Symbol/Type.cpp:584:0
#7 0x00007f01f0021967
lldb_private::CompilerType::CompilerType(lldb_private::CompilerType const&)
src/tools/lldb/include/lldb/Symbol/CompilerType.h:45:20
#8 0x00007f01f0021967 lldb_private::Type::GetFullCompilerType()
src/tools/lldb/source/Symbol/Type.cpp:597:0
#9 0x00007f01f0263834 lldb_private::CompilerType::operator bool() const
src/tools/lldb/include/lldb/Symbol/CompilerType.h:66:19
#10 0x00007f01f0263834
lldb_private::ClangExpressionDeclMap::GetVariableValue(std::__1::shared_ptr<lldb_private::Variable>&,
lldb_private::Value&, lldb_private::TaggedASTType<1u>*,
lldb_private::TaggedASTType<0u>*)
src/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp:1612:0
#11 0x00007f01f02627e0
lldb_private::ClangExpressionDeclMap::AddOneVariable(lldb_private::NameSearchContext&,
std::__1::shared_ptr<lldb_private::Variable>,
lldb_private::SharingPtr<lldb_private::ValueObject>, unsigned int)
src/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp:1708:7
#12 0x00007f01f025fc5c
lldb_private::SharingPtr<lldb_private::ValueObject>::~SharingPtr()
src/tools/lldb/include/lldb/Utility/SharingPtr.h:218:7
#13 0x00007f01f025fc5c
lldb_private::ClangExpressionDeclMap::FindExternalVisibleDecls(lldb_private::NameSearchContext&,
std::__1::shared_ptr<lldb_private::Module>, lldb_private::CompilerDeclContext&,
unsigned int)
src/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp:1223:0
#14 0x00007f01f025f07a
lldb_private::ClangExpressionDeclMap::FindExternalVisibleDecls(lldb_private::NameSearchContext&)
src/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp:814:5
#15 0x00007f01f024a24d
lldb_private::ClangASTSource::FindExternalVisibleDeclsByName(clang::DeclContext
const*, clang::DeclarationName)
src/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp:175:44
#16 0x00007f01f03cb1cc clang::DeclContext::lookup(clang::DeclarationName) const
src/tools/clang/lib/AST/DeclBase.cpp:1486:60
[...]
#65 0x00000000004032b9 _start (stage2/bin/lldb-4.0.0+0x4032b9)
please file a bug report against lldb reporting this failure log, and as many
details as possible
CXXMemberCallExpr 0x9418930 'void'
`-MemberExpr 0x94188f8 '<bound member function type>' .g 0x93ed2b8
  `-CXXTemporaryObjectExpr 0x94187d8 'struct dr1330::A' 'void (void) noexcept'
zeroing


Despite the assertion failure, lldb correctly executed the command, and further
executions of the same command work fine ¯\_(ツ)_/¯</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>