[LLVMbugs] [Bug 7040] New: Assertion on reduced boost testcase

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue May 4 08:28:00 PDT 2010


http://llvm.org/bugs/show_bug.cgi?id=7040

           Summary: Assertion on reduced boost testcase
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: chris at bubblescope.net
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


Created an attachment (id=4819)
 --> (http://llvm.org/bugs/attachment.cgi?id=4819)
Asserting testcase

The attached code is reduced from an 'error on valid code' problem in
libs/asio/example/serialization/client.cpp. The reduced is 'assert on valid
code', backtrace:

t.cc:11:5: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
Assertion failed: (DefinitionData && "queried property of class with no
definition"), function data, file
/Users/caj/clang/llvm/tools/clang/lib/AST/../../include/clang/AST/DeclCXX.h,
line 317.
0  clang             0x00f542d5 PrintStackTrace(void*) + 45
1  clang             0x00f5481f SignalHandler(int) + 374
2  libSystem.B.dylib 0x91cc842b _sigtramp + 43
3  libSystem.B.dylib 0xffffffff _sigtramp + 1848867839
4  libSystem.B.dylib 0x91d558e5 raise + 26
5  libSystem.B.dylib 0x91d6b99c abort + 93
6  libSystem.B.dylib 0x91d58544 __pthread_markcancel + 0
7  clang             0x00502c1d clang::CXXRecordDecl::data() const + 73
8  clang             0x00296be9 clang::CXXRecordDecl::hasTrivialDestructor()
const + 17
9  clang             0x00231e62
hasNonTrivialDestructorOrCopyConstructor(clang::RecordType const*) + 60
10 clang             0x0023748e (anonymous
namespace)::X86_32ABIInfo::classifyArgumentType(clang::QualType,
clang::ASTContext&, llvm::LLVMContext&) const + 68
11 clang             0x00237ef5 (anonymous
namespace)::X86_32ABIInfo::computeInfo(clang::CodeGen::CGFunctionInfo&,
clang::ASTContext&, llvm::LLVMContext&) const + 195
12 clang             0x0016087c
clang::CodeGen::CodeGenTypes::getFunctionInfo(clang::CanQual<clang::Type>,
llvm::SmallVectorImpl<clang::CanQual<clang::Type> > const&,
clang::FunctionType::ExtInfo const&) + 484
13 clang             0x0016099e getFunctionInfo(clang::CodeGen::CodeGenTypes&,
llvm::SmallVectorImpl<clang::CanQual<clang::Type> >&,
clang::CanQual<clang::FunctionProtoType>) + 250
14 clang             0x00160fc7
clang::CodeGen::CodeGenTypes::getFunctionInfo(clang::CXXMethodDecl const*) +
117
15 clang             0x0018c907 (anonymous
namespace)::AggExprEmitter::VisitUnaryAddrOf(clang::UnaryOperator const*) + 631
16 clang             0x0018e31c clang::StmtVisitor<(anonymous
namespace)::AggExprEmitter, void>::Visit(clang::Stmt*) + 1090
17 clang             0x0018ede7
clang::CodeGen::CodeGenFunction::EmitAggExpr(clang::Expr const*, llvm::Value*,
bool, bool, bool, bool) + 293
18 clang             0x00179aa9
clang::CodeGen::CodeGenFunction::EmitLocalBlockVarDecl(clang::VarDecl const&) +
5339
19 clang             0x0017a4be
clang::CodeGen::CodeGenFunction::EmitBlockVarDecl(clang::VarDecl const&) + 152
20 clang             0x0017a6f8
clang::CodeGen::CodeGenFunction::EmitDecl(clang::Decl const&) + 400
21 clang             0x001eac17
clang::CodeGen::CodeGenFunction::EmitDeclStmt(clang::DeclStmt const&) + 105
22 clang             0x001ec959
clang::CodeGen::CodeGenFunction::EmitSimpleStmt(clang::Stmt const*) + 213
23 clang             0x001eacd0
clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*) + 88
24 clang             0x001ec751
clang::CodeGen::CodeGenFunction::EmitCompoundStmt(clang::CompoundStmt const&,
bool, llvm::Value*, bool) + 253
25 clang             0x001ec93a
clang::CodeGen::CodeGenFunction::EmitSimpleStmt(clang::Stmt const*) + 182
26 clang             0x001eacd0
clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*) + 88
27 clang             0x0020dfe5
clang::CodeGen::CodeGenFunction::EmitFunctionBody(llvm::SmallVector<std::pair<clang::VarDecl
const*, clang::QualType>, 16u>&) + 151
28 clang             0x0020f2ae
clang::CodeGen::CodeGenFunction::GenerateCode(clang::CodeGen::GlobalDecl,
llvm::Function*) + 1234
29 clang             0x002176b0
clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(clang::CodeGen::GlobalDecl)
+ 708
30 clang             0x002181d4
clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::CodeGen::GlobalDecl)
+ 298
31 clang             0x00218c06 clang::CodeGen::CodeGenModule::EmitDeferred() +
360
32 clang             0x00218e3c clang::CodeGen::CodeGenModule::Release() + 24
33 clang             0x002300a6 (anonymous
namespace)::CodeGeneratorImpl::HandleTranslationUnit(clang::ASTContext&) + 88
34 clang             0x000441d2 (anonymous
namespace)::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) + 100
35 clang             0x0023ede0 clang::ParseAST(clang::Preprocessor&,
clang::ASTConsumer*, clang::ASTContext&, bool, bool,
clang::CodeCompleteConsumer*) + 673
36 clang             0x0006333b clang::ASTFrontendAction::ExecuteAction() + 269
37 clang             0x00063458 clang::FrontendAction::Execute() + 278
38 clang             0x000472eb
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 879
39 clang             0x0002a13b cc1_main(char const**, char const**, char
const*, void*) + 1979
40 clang             0x0002e03b main + 272
41 clang             0x00028e79 start + 53
Stack dump:
0.    Program arguments: /usr/local/bin/clang -cc1 -triple
i386-apple-darwin10.0.0 -S -disable-free -main-file-name t.cc -pic-level 1
-mdisable-fp-elim -target-cpu yonah -resource-dir /usr/local/lib/clang/2.0
-ferror-limit 19 -ftemplate-backtrace-limit 10 -fmessage-length 133
-stack-protector 1 -fblocks -fexceptions -fdiagnostics-show-option
-fcolor-diagnostics -o
/var/folders/M8/M86fCFVgGQ0r-V2oY5lLC++++TI/-Tmp-/cc-RdFfRN.s -x c++ t.cc 
1.    <eof> parser at end of file
2.    Per-file LLVM IR generation
3.    t.cc:6:9: Generating code for declaration 'connection::foo'
4.    t.cc:7:5: LLVM IR generation of compound statement ('{}')
clang: error: compiler command failed due to signal 6 (use -v to see
invocation)

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list