<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 --- - clang hits assert in clang::ASTContext::getASTRecordLayout"
   href="http://llvm.org/bugs/show_bug.cgi?id=15826">15826</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>clang hits assert in clang::ASTContext::getASTRecordLayout
          </td>
        </tr>

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

        <tr>
          <th>Version</th>
          <td>3.2
          </td>
        </tr>

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

        <tr>
          <th>OS</th>
          <td>FreeBSD
          </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>LLVM Codegen
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>glebius@FreeBSD.org
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvmbugs@cs.uiuc.edu
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>(gdb) bt
#0  0x000000000183c17a in kill ()
#1  0x000000000183af56 in abort ()
#2  0x0000000001829a6a in __assert ()
#3  0x0000000000cc940b in clang::ASTContext::getASTRecordLayout (
    this=<value optimized out>, D=0x802ce3d40)
    at
/usr/src/aio/lib/clang/libclangast/../../../contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp:2470
#4  0x0000000000d7d486 in clang::ASTContext::getTypeInfoImpl (
    this=<value optimized out>, T=<value optimized out>)
    at
/usr/src/aio/lib/clang/libclangast/../../../contrib/llvm/tools/clang/lib/AST/ASTContext.cpp:1534
#5  0x0000000000d7cc5a in clang::ASTContext::getTypeInfo (this=0x80283a000, 
    T=0x802ce3dc0)
    at
/usr/src/aio/lib/clang/libclangast/../../../contrib/llvm/tools/clang/lib/AST/ASTContext.cpp:1301
#6  0x0000000000d7d5ac in clang::ASTContext::getTypeInfoImpl (
    this=0x80283a000, T=<value optimized out>)
    at
/usr/src/aio/lib/clang/libclangast/../../../contrib/llvm/tools/clang/lib/AST/ASTContext.cpp:1598
#7  0x0000000000d7cc5a in clang::ASTContext::getTypeInfo (this=0x80283a000, 
    T=0x802ce3df0)
    at
/usr/src/aio/lib/clang/libclangast/../../../contrib/llvm/tools/clang/lib/AST/ASTContext.cpp:1301
---Type <return> to continue, or q <return> to quit---
#8  0x0000000000d7cb62 in clang::ASTContext::getTypeInfoInChars (
    this=0x80283a000, T=0x6)
    at
/usr/src/aio/lib/clang/libclangast/../../../contrib/llvm/tools/clang/lib/AST/ASTContext.cpp:1286
#9  0x0000000000ccc6c8 in (anonymous
namespace)::RecordLayoutBuilder::LayoutField (this=0x7fffffff95e8,
D=0x802ce4170)
    at
/usr/src/aio/lib/clang/libclangast/../../../contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp:2068
#10 0x0000000000cceb64 in (anonymous
namespace)::RecordLayoutBuilder::LayoutFields (this=0x7fffffff95e8, D=<value
optimized out>)
    at
/usr/src/aio/lib/clang/libclangast/../../../contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp:1835
#11 0x0000000000cc8921 in clang::ASTContext::getASTRecordLayout (
    this=0x80283a000, D=0x802ce3a20)
    at
/usr/src/aio/lib/clang/libclangast/../../../contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp:1638
#12 0x00000000005d2bde in clang::CodeGen::CodeGenTypes::ComputeRecordLayout (
    this=0x8028e38a8, D=0x802ce3a20, Ty=0x8030d18f0)
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayoutBuilder.cpp:208
#13 0x000000000068640e in clang::CodeGen::CodeGenTypes::ConvertRecordDeclType (
    this=0x8028e38a8, RD=<value optimized out>)
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/---Type
<return> to continue, or q <return> to quit---
lib/CodeGen/CodeGenTypes.cpp:660
#14 0x00000000006852ad in clang::CodeGen::CodeGenTypes::ConvertType (
    this=0x8028e38a8)
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp:295
#15 0x00000000006851d5 in clang::CodeGen::CodeGenTypes::ConvertTypeForMem (
    this=0x8028e38a8)
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp:88
#16 0x00000000005d4786 in (anonymous
namespace)::CGRecordLayoutBuilder::LayoutFields (this=0x7fffffffa028, D=<value
optimized out>)
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayoutBuilder.cpp:398
#17 0x00000000005d2cb9 in clang::CodeGen::CodeGenTypes::ComputeRecordLayout (
    this=0x8028e38a8, D=0x802ce2df0, Ty=0x802914c90)
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayoutBuilder.cpp:218
#18 0x000000000068640e in clang::CodeGen::CodeGenTypes::ConvertRecordDeclType (
    this=0x8028e38a8, RD=<value optimized out>)
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp:660
#19 0x00000000006860c7 in clang::CodeGen::CodeGenTypes::UpdateCompletedType (
    this=<value optimized out>, TD=<value optimized out>)
---Type <return> to continue, or q <return> to quit---
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp:262
#20 0x0000000000576189 in (anonymous
namespace)::CodeGeneratorImpl::HandleTagDeclDefinition (this=0x8028343c0,
D=0x802ce2df0)
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp:81
#21 0x000000000057430b in clang::BackendConsumer::HandleTagDeclDefinition (
    this=0x802820240, D=0x802ce2df0)
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp:171
#22 0x000000000091b1c2 in clang::Sema::ActOnTagFinishDefinition (
    this=0x8028df000, S=<value optimized out>, TagD=0x802ce2df0)
    at
/usr/src/aio/lib/clang/libclangsema/../../../contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp:10189
#23 0x00000000006e39c2 in clang::Parser::ParseStructUnionBody (
    this=0x80280f600, TagType=17, TagDecl=0x802ce2df0)
    at
/usr/src/aio/lib/clang/libclangparse/../../../contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp:3174
#24 0x00000000006c9c38 in clang::Parser::ParseClassSpecifier (
    this=0x80280f600, TagTokKind=<value optimized out>, DS=@0x7fffffffb668, 
    TemplateInfo=@0x7fffffffb5e0, AS=clang::AS_none, 
    EnteringContext=<value optimized out>, Attributes=<value optimized out>)
    at
/usr/src/aio/lib/clang/libclangparse/../../../contrib/llvm/tools/clang/li---Type
<return> to continue, or q <return> to quit---
b/Parse/ParseDeclCXX.cpp:1559
#25 0x00000000006dba18 in clang::Parser::ParseDeclarationSpecifiers (
    this=0x80280f600, DS=@0x7fffffffb668, TemplateInfo=@0x7fffffffb5e0, 
    AS=clang::AS_none, DSContext=clang::Parser::DSC_top_level, LateAttrs=0x0)
    at
/usr/src/aio/lib/clang/libclangparse/../../../contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp:2852
#26 0x000000000068c480 in clang::Parser::ParseDeclOrFunctionDefInternal (
    this=0x80280f600, attrs=@0x7fffffffbd88, DS=@0x7fffffffb668, 
    AS=clang::AS_none)
    at
/usr/src/aio/lib/clang/libclangparse/../../../contrib/llvm/tools/clang/lib/Parse/Parser.cpp:831
#27 0x000000000068c080 in clang::Parser::ParseDeclarationOrFunctionDefinition (
    this=0x80280f600, attrs=@0x7fffffffbd88, DS=<value optimized out>, 
    AS=clang::AS_none)
    at
/usr/src/aio/lib/clang/libclangparse/../../../contrib/llvm/tools/clang/lib/Parse/Parser.cpp:897
#28 0x000000000068b8c3 in clang::Parser::ParseExternalDeclaration (
    this=<value optimized out>, attrs=<value optimized out>, 
    DS=<value optimized out>)
    at
/usr/src/aio/lib/clang/libclangparse/../../../contrib/llvm/tools/clang/lib/Parse/Parser.cpp:762
#29 0x000000000068ae80 in clang::Parser::ParseTopLevelDecl (this=0x80280f600, 
    Result=@0x7fffffffbe08)
---Type <return> to continue, or q <return> to quit---
    at
/usr/src/aio/lib/clang/libclangparse/../../../contrib/llvm/tools/clang/lib/Parse/Parser.cpp:567
#30 0x0000000000688256 in clang::ParseAST (S=@0x8028df000, PrintStats=false, 
    SkipFunctionBodies=<value optimized out>)
    at
/usr/src/aio/lib/clang/libclangparse/../../../contrib/llvm/tools/clang/lib/Parse/ParseAST.cpp:144
#31 0x00000000005736e1 in clang::CodeGenAction::ExecuteAction (
    this=0x80282b140)
    at
/usr/src/aio/lib/clang/libclangcodegen/../../../contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp:423
#32 0x000000000042f177 in clang::FrontendAction::Execute (
    this=<value optimized out>)
    at
/usr/src/aio/lib/clang/libclangfrontend/../../../contrib/llvm/tools/clang/lib/Frontend/FrontendAction.cpp:376
#33 0x0000000000448fff in clang::CompilerInstance::ExecuteAction (
    this=0x8028200c0, Act=@0x80282b140)
    at
/usr/src/aio/lib/clang/libclangfrontend/../../../contrib/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp:691
#34 0x0000000000407f94 in clang::ExecuteCompilerInvocation (Clang=0x8028200c0)
    at
/usr/src/aio/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:236
#35 0x0000000000400693 in cc1_main (ArgBegin=<value optimized out>, 
    ArgEnd=0x7fffffffce01, Argv0=0x80280d148 "/usr/bin/cc", MainAddr=0x404250)
---Type <return> to continue, or q <return> to quit---
    at
/usr/src/aio/usr.bin/clang/clang/../../../contrib/llvm/tools/clang/tools/driver/cc1_main.cpp:99
#36 0x00000000004059f6 in main (argc_=<value optimized out>, 
    argv_=<value optimized out>)
    at
/usr/src/aio/usr.bin/clang/clang/../../../contrib/llvm/tools/clang/tools/driver/driver.cpp:357</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>