[PATCH] Enable standalone-debug by default on FreeBSD

Ed Maste emaste at freebsd.org
Thu May 8 12:20:58 PDT 2014


On 8 May 2014 15:10, Eric Christopher <echristo at gmail.com> wrote:
> That's a pretty serious lldb bug. Have you filed it? What's the case where
> it shows up?

It's PR 19676 - it's in the summary of D3654 :-)
http://llvm.org/bugs/show_bug.cgi?id=19676

A thread on the issue is here:
http://lists.cs.uiuc.edu/pipermail/lldb-dev/2014-April/003800.html

As it happens I was debugging clang's debuginfo generation when I
encountered it:

 * thread #1: tid = 104525, 0x000000081191ff6e
libclangCodeGen.so`clang::CodeGen::CGDebugInfo::CreateType(this=0x0000000815c0a000,
BT=0x0000000815c3d400) + 30 at CGDebugInfo.cpp:391, stop reason =
breakpoint 1.1
    frame #0: 0x000000081191ff6e
libclangCodeGen.so`clang::CodeGen::CGDebugInfo::CreateType(this=0x0000000815c0a000,
BT=0x0000000815c3d400) + 30 at CGDebugInfo.cpp:391
   388  /// CreateType - Get the Basic type from the cache or create a new
   389  /// one if necessary.
   390  llvm::DIType CGDebugInfo::CreateType(const BuiltinType *BT) {
-> 391    unsigned Encoding = 0;
   392    StringRef BTName;
   393    switch (BT->getKind()) {
   394  #define BUILTIN_TYPE(Id, SingletonId)
(lldb) p BT
Assertion failed: (D && "Cannot get layout of forward declarations!"),
function getASTRecordLayout, file
../tools/clang/lib/AST/RecordLayoutBuilder.cpp, line 2783.

At the very least we need to have LLDB return an error to the user
rather than tripping the assertion, but it really needs to find the
definition debuginfo elsewhere.



More information about the cfe-commits mailing list