[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[creduce-bugs] A bug in clang_delta



Hello,
   I've encountered a bug in attached source file with following backtrace:

command:
clang_delta --query-instances=replace-function-def-with-decl /tmp/MediaPipeline.ii

#0  clang::FunctionDecl::isNoReturn (this=0x0) at /usr/src/debug/llvm-3.3/tools/clang/lib/AST/Decl.cpp:2123
#1  0x00007ffff661f8b1 in (anonymous namespace)::CFGBuilder::addAutomaticObjDtors (this=0x7fffffffa4a8, S=0x26ae180, B=..., E=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Analysis/CFG.cpp:848
#2  0x00007ffff661f0ec in addLocalScopeAndDtors (this=<optimized out>, this=<optimized out>, S=<optimized out>)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Analysis/CFG.cpp:1009
#3  (anonymous namespace)::CFGBuilder::VisitCompoundStmt (this=0x7fffffffa4a8, C=0x26ae180)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Analysis/CFG.cpp:1520
#4  0x00007ffff6617bfb in (anonymous namespace)::CFGBuilder::Visit (this=<optimized out>, S=<optimized out>, asc=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Analysis/CFG.cpp:1073
#5  0x00007ffff660e6ed in addStmt (this=<optimized out>, S=<optimized out>, this=<optimized out>, S=<optimized out>)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Analysis/CFG.cpp:432
#6  buildCFG (this=<optimized out>, Statement=<optimized out>, this=<optimized out>, D=<optimized out>, Statement=<optimized out>)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Analysis/CFG.cpp:654
#7  clang::CFG::buildCFG (D=0x26ad700, Statement=0x26ae180, C=<optimized out>, BO=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Analysis/CFG.cpp:3359
#8  0x00007ffff660964c in clang::AnalysisDeclContext::getCFG (this=0x7fffffffa758)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Analysis/AnalysisDeclContext.cpp:166
#9  0x00007ffff68c340f in CheckFallThrough (AC=..., AC=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp:101
#10 CheckFallThroughForBody (AC=..., Body=<optimized out>, S=..., blkExpr=<optimized out>, S=..., D=<optimized out>,
    Body=<optimized out>, blkExpr=<optimized out>, CD=..., AC=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp:358
#11 clang::sema::AnalysisBasedWarnings::IssueWarnings (this=0xd2c030, fscope=0xd2cae0, D=0x26ad700, blkExpr=0x0, P=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp:1580
#12 0x00007ffff68ed5df in clang::Sema::PopFunctionScopeInfo (this=0xd2a8b0, WP=<optimized out>, D=0x0, blkExpr=0x0)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Sema/Sema.cpp:1028
#13 0x00007ffff696c4e3 in clang::Sema::ActOnFinishFunctionBody (this=0xd2a8b0, dcl=0x26ad700, Body=<optimized out>,
    IsInstantiation=false) at /usr/src/debug/llvm-3.3/tools/clang/lib/Sema/SemaDecl.cpp:9015
#14 0x00007ffff6df78ae in clang::Parser::ParseFunctionStatementBody (this=0xd2cec0, Decl=0x26ad700, BodyScope=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseStmt.cpp:2403
#15 0x00007ffff6da19ac in clang::Parser::ParseLexedMethodDef (this=0xd2cec0, LM=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseCXXInlineMethods.cpp:459
#16 0x00007ffff6da139d in clang::Parser::ParseLexedMethodDefs (this=<optimized out>, Class=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseCXXInlineMethods.cpp:396
#17 0x00007ffff6dc2a59 in clang::Parser::ParseCXXMemberSpecification (this=0xd2cec0, Attrs=..., TagType=17, TagDecl=0x26ad150,
    RecordLoc=..., AttrFixitLoc=...) at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseDeclCXX.cpp:2648
#18 0x00007ffff6dc1279 in clang::Parser::ParseClassSpecifier (this=0xd2cec0, TagTokKind=<optimized out>, DS=..., TemplateInfo=...,
    AS=clang::AS_none, EnteringContext=<optimized out>, DSC=<optimized out>, Attributes=..., StartLoc=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseDeclCXX.cpp:1577
#19 0x00007ffff6dab52d in clang::Parser::ParseDeclarationSpecifiers (this=0xd2cec0, DS=..., TemplateInfo=..., AS=clang::AS_none,
    DSContext=clang::Parser::DSC_top_level, LateAttrs=0x0) at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseDecl.cpp:2991
#20 0x00007ffff6e0378e in clang::Parser::ParseDeclOrFunctionDefInternal (this=0xd2cec0, attrs=..., DS=..., AS=clang::AS_none)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/Parser.cpp:841
#21 0x00007ffff6e03490 in clang::Parser::ParseDeclarationOrFunctionDefinition (this=0xd2cec0, attrs=..., DS=<optimized out>,
    AS=clang::AS_none) at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/Parser.cpp:907
#22 0x00007ffff6e02bee in clang::Parser::ParseExternalDeclaration (this=0xd2cec0, attrs=..., DS=0x0)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/Parser.cpp:772
#23 0x00007ffff6dbbcbd in clang::Parser::ParseInnerNamespace (this=0xd2cec0, IdentLoc=..., Ident=..., NamespaceLoc=...,
    index=<optimized out>, InlineLoc=..., attrs=..., Tracker=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseDeclCXX.cpp:201
#24 0x00007ffff6dbb880 in clang::Parser::ParseNamespace (this=0xd2cec0, Context=<optimized out>, DeclEnd=..., InlineLoc=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseDeclCXX.cpp:177
#25 0x00007ffff6daa427 in clang::Parser::ParseDeclaration (this=0xd2cec0, Stmts=..., Context=0, DeclEnd=..., attrs=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseDecl.cpp:1370
#26 0x00007ffff6e02844 in clang::Parser::ParseExternalDeclaration (this=0xd2cec0, attrs=..., DS=<optimized out>)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/Parser.cpp:710
#27 0x00007ffff6dbbcbd in clang::Parser::ParseInnerNamespace (this=0xd2cec0, IdentLoc=..., Ident=..., NamespaceLoc=...,
    index=<optimized out>, InlineLoc=..., attrs=..., Tracker=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseDeclCXX.cpp:201
#28 0x00007ffff6dbb880 in clang::Parser::ParseNamespace (this=0xd2cec0, Context=<optimized out>, DeclEnd=..., InlineLoc=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseDeclCXX.cpp:177
#29 0x00007ffff6daa427 in clang::Parser::ParseDeclaration (this=0xd2cec0, Stmts=..., Context=0, DeclEnd=..., attrs=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseDecl.cpp:1370
#30 0x00007ffff6e02844 in clang::Parser::ParseExternalDeclaration (this=0xd2cec0, attrs=..., DS=<optimized out>)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/Parser.cpp:710
#31 0x00007ffff6e022a0 in clang::Parser::ParseTopLevelDecl (this=0xd2cec0, Result=...)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/Parser.cpp:577
#32 0x00007ffff6d9f8f6 in clang::ParseAST (S=..., PrintStats=false, SkipFunctionBodies=<optimized out>)
    at /usr/src/debug/llvm-3.3/tools/clang/lib/Parse/ParseAST.cpp:144
#33 0x00000000009e8ec4 in TransformationManager::doTransformation (this=0xce32d0, ErrorMsg="", ErrorCode=@0xcd07a8: -1)
    at TransformationManager.cpp:200
#34 0x0000000000444e24 in main (argc=3, argv=0x7fffffffdac8) at ClangDelta.cpp:211

clang --version
clang version 3.3 (branches/release_33 183898)
Target: x86_64-suse-linux
Thread model: posix

creduce revision:
673eaece48c9fb2784515c86ec5c42ffa3e6ffca

I am not sure if the problem still occurs in master, can you please try it?

Thank you,
Martin

Attachment: MediaPipeline.ii.bz2
Description: application/bzip