[LLVMbugs] [Bug 6376] Assertion failed: ((Result || isa<UsingShadowDecl>(D)) && "Unable to find instantiation of declaration!"), function FindInstantiatedDecl, file SemaTemplateInstantiateDecl.cpp, line 2306.

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Sun Feb 21 16:07:40 PST 2010


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

--- Comment #3 from Albert Zeyer <ich at az2000.de> 2010-02-21 18:07:39 CST ---
In gdb:

Assertion failed: ((Result || isa<UsingShadowDecl>(D)) && "Unable to find
instantiation of declaration!"), function FindInstantiatedDecl, file
SemaTemplateInstantiateDecl.cpp, line 2311.

Program received signal SIGABRT, Aborted.
0x95429e42 in __kill ()
(gdb) bt
#0  0x95429e42 in __kill ()
#1  0x95429e34 in kill$UNIX2003 ()
#2  0x9549c23a in raise ()
#3  0x954a8679 in abort ()
#4  0x9549d3db in __assert_rtn ()
#5  0x0038f249 in clang::Sema::FindInstantiatedDecl (this=0xbfffd980,
D=0x4381a10, TemplateArgs=@0xbfff6a20) at SemaTemplateInstantiateDecl.cpp:2310
#6  0x003612bb in (anonymous namespace)::TemplateInstantiator::TransformDecl
(this=0xbfff673c, D=0x4381a10) at SemaTemplateInstantiate.cpp:603
#7  0x00375c82 in clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateName (this=0xbfff673c,
Name={Storage = {Val = {Val = {Value = 70792621}}}}, ObjectType={Value = {Value
= 0}}) at TreeTransform.h:1859
#8  0x00379d93 in clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTemplateSpecializationType
(this=0xbfff673c, TLB=@0xbfff6444,
TL={<clang::ConcreteTypeLoc<clang::UnqualTypeLoc,clang::TemplateSpecializationTypeLoc,clang::TemplateSpecializationType,clang::TemplateSpecializationLocInfo>>
= {<clang::UnqualTypeLoc> = {<clang::TypeLoc> = {Ty = 0x4383630, Data =
0x46ae9e4}, <No data fields>}, <No data fields>}, <No data fields>},
ObjectType={Value = {Value = 0}}) at TreeTransform.h:2896
#9  0x00374df4 in clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType (this=0xbfff673c,
TLB=@0xbfff6444, T={Ty = 0x4383630, Data = 0x46ae9e4}, ObjectType={Value =
{Value = 0}}) at TypeNodes.def:84
#10 0x00374fd5 in clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType (this=0xbfff673c,
DI=0x46ae9e0, ObjectType={Value = {Value = 0}}) at TreeTransform.h:2092
#11 0x003750d8 in clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType (this=0xbfff673c, T={Value =
{Value = 70792752}}, ObjectType={Value = {Value = 0}}) at TreeTransform.h:2073
#12 0x003758ad in clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformNestedNameSpecifier
(this=0xbfff673c, NNS=0x4383688, Range={B = {ID = 3095960}, E = {ID =
3095960}}, MayBePseudoDestructor=false, ObjectType={Value = {Value = 0}},
FirstQualifierInScope=0x0) at TreeTransform.h:1788
#13 0x003743a2 in clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformTypenameType (this=0xbfff673c,
TLB=@0xbfff6664,
TL={<clang::InheritingConcreteTypeLoc<clang::TypeSpecTypeLoc,clang::TypenameTypeLoc,clang::TypenameType>>
= {<clang::TypeSpecTypeLoc> =
{<clang::ConcreteTypeLoc<clang::UnqualTypeLoc,clang::TypeSpecTypeLoc,clang::Type,clang::TypeSpecLocInfo>>
= {<clang::UnqualTypeLoc> = {<clang::TypeLoc> = {Ty = 0x43836c0, Data =
0x46ae8a4}, <No data fields>}, <No data fields>}, <No data fields>}, <No data
fields>}, <No data fields>}, ObjectType={Value = {Value = 0}}) at
TreeTransform.h:2975
#14 0x00374e7e in clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType (this=0xbfff673c,
TLB=@0xbfff6664, T={Ty = 0x43836c0, Data = 0x46ae8a4}, ObjectType={Value =
{Value = 0}}) at TypeNodes.def:86
#15 0x00374fd5 in clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType (this=0xbfff673c,
DI=0x46ae8a0, ObjectType={Value = {Value = 0}}) at TreeTransform.h:2092
#16 0x003750d8 in clang::TreeTransform<(anonymous
namespace)::TemplateInstantiator>::TransformType (this=0xbfff673c, T={Value =
{Value = 70792896}}, ObjectType={Value = {Value = 0}}) at TreeTransform.h:2073
#17 0x00362a62 in clang::Sema::SubstType (this=0xbfffd980, T={Value = {Value =
70792896}}, TemplateArgs=@0xbfff6a20, Loc={ID = 3095960}, Entity={Ptr = 0}) at
SemaTemplateInstantiate.cpp:967
#18 0x00362c08 in clang::Sema::SubstBaseSpecifiers (this=0xbfffd980,
Instantiation=0x46711c0, Pattern=0x43832b0, TemplateArgs=@0xbfff6a20) at
SemaTemplateInstantiate.cpp:1000
#19 0x00363049 in clang::Sema::InstantiateClass (this=0xbfffd980,
PointOfInstantiation={ID = 3131}, Instantiation=0x46711c0, Pattern=0x43832b0,
TemplateArgs=@0xbfff6a20, TSK=clang::TSK_ImplicitInstantiation, Complain=true)
at SemaTemplateInstantiate.cpp:1101
#20 0x00363edd in clang::Sema::InstantiateClassTemplateSpecialization
(this=0xbfffd980, PointOfInstantiation={ID = 3131},
ClassTemplateSpec=0x46711c0, TSK=clang::TSK_ImplicitInstantiation,
Complain=true) at SemaTemplateInstantiate.cpp:1307
#21 0x00398706 in clang::Sema::RequireCompleteType (this=0xbfffd980, Loc={ID =
3131}, T={Value = {Value = 73863752}}, PD=@0xbfff813c, Note=@0xbfff811c) at
SemaType.cpp:1915
#22 0x0031b33a in clang::Sema::BuildCallToObjectOfClassType (this=0xbfffd980,
S=0x340d5c0, Object=0x46ae818, LParenLoc={ID = 3131}, Args=0xbfff8580,
NumArgs=0, CommaLocs=0xbfff85d0, RParenLoc={ID = 3132}) at
SemaOverload.cpp:6168
#23 0x002d3b70 in clang::Sema::ActOnCallExpr (this=0xbfffd980, S=0x340d5c0,
fn=@0xbfff86dc, LParenLoc={ID = 3131}, args=@0xbfff86c0, CommaLocs=0xbfff85d0,
RParenLoc={ID = 3132}) at SemaExpr.cpp:3519
#24 0x005a08c4 in clang::Parser::ParsePostfixExpressionSuffix (this=0xbfffdfa0,
LHS=@0xbfff89cc) at ParseExpr.cpp:984
#25 0x0059cdd2 in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, NotCastExpr=@0xbfff8e57,
TypeOfCast=0x0) at ParseExpr.cpp:667
#26 0x0059ed09 in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, TypeOfCast=0x0) at
ParseExpr.cpp:425
#27 0x0059eea7 in clang::Parser::ParseAssignmentExpression (this=0xbfffdfa0) at
ParseExpr.cpp:255
#28 0x0059f092 in clang::Parser::ParseExpressionList (this=0xbfffdfa0,
Exprs=@0xbfff9260, CommaLocs=@0xbfff92b0, Completer={__pfn = 0, __delta = 0},
Data=0x0) at ParseExpr.cpp:1529
#29 0x005a873e in clang::Parser::ParseCXXTypeConstructExpression
(this=0xbfffdfa0, DS=@0xbfff93c0) at ParseExprCXX.cpp:565
#30 0x0059e22b in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, NotCastExpr=@0xbfff9a47,
TypeOfCast=0x0) at ParseExpr.cpp:805
#31 0x0059ed09 in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, TypeOfCast=0x0) at
ParseExpr.cpp:425
#32 0x0059c960 in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, NotCastExpr=@0xbfffa157,
TypeOfCast=0x0) at ParseExpr.cpp:629
#33 0x0059ed09 in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, TypeOfCast=0x0) at
ParseExpr.cpp:425
#34 0x0059eea7 in clang::Parser::ParseAssignmentExpression (this=0xbfffdfa0) at
ParseExpr.cpp:255
#35 0x0059f092 in clang::Parser::ParseExpressionList (this=0xbfffdfa0,
Exprs=@0xbfffa560, CommaLocs=@0xbfffa5b0, Completer={__pfn = 0, __delta = 0},
Data=0x0) at ParseExpr.cpp:1529
#36 0x005a873e in clang::Parser::ParseCXXTypeConstructExpression
(this=0xbfffdfa0, DS=@0xbfffa6c0) at ParseExprCXX.cpp:565
#37 0x0059e22b in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, NotCastExpr=@0xbfffad47,
TypeOfCast=0x0) at ParseExpr.cpp:805
#38 0x0059ed09 in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, TypeOfCast=0x0) at
ParseExpr.cpp:425
#39 0x0059c960 in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, NotCastExpr=@0xbfffb457,
TypeOfCast=0x0) at ParseExpr.cpp:629
#40 0x0059ed09 in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, TypeOfCast=0x0) at
ParseExpr.cpp:425
#41 0x0059eea7 in clang::Parser::ParseAssignmentExpression (this=0xbfffdfa0) at
ParseExpr.cpp:255
#42 0x0059f092 in clang::Parser::ParseExpressionList (this=0xbfffdfa0,
Exprs=@0xbfffb5e0, CommaLocs=@0xbfffb630, Completer={__pfn = 0x33d, __delta =
0}, Data=0x46ae7e4) at ParseExpr.cpp:1529
#43 0x005a0601 in clang::Parser::ParsePostfixExpressionSuffix (this=0xbfffdfa0,
LHS=@0xbfffba3c) at ParseExpr.cpp:966
#44 0x0059cdd2 in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, NotCastExpr=@0xbfffbec7,
TypeOfCast=0x0) at ParseExpr.cpp:667
#45 0x0059ed09 in clang::Parser::ParseCastExpression (this=0xbfffdfa0,
isUnaryExpression=false, isAddressOfOperand=false, TypeOfCast=0x0) at
ParseExpr.cpp:425
#46 0x0059eea7 in clang::Parser::ParseAssignmentExpression (this=0xbfffdfa0) at
ParseExpr.cpp:255
#47 0x0059f3bf in clang::Parser::ParseExpression (this=0xbfffdfa0) at
ParseExpr.cpp:204
#48 0x005b8dd2 in clang::Parser::ParseStatementOrDeclaration (this=0xbfffdfa0,
OnlyStatement=false) at ParseStmt.cpp:126
#49 0x005bd618 in clang::Parser::ParseCompoundStatementBody (this=0xbfffdfa0,
isStmtExpr=false) at ParseStmt.cpp:469
#50 0x005bdf30 in clang::Parser::ParseCompoundStatement (this=0xbfffdfa0,
Attr=0x0, isStmtExpr=false) at ParseStmt.cpp:446
#51 0x005b9071 in clang::Parser::ParseStatementOrDeclaration (this=0xbfffdfa0,
OnlyStatement=true) at ParseStmt.cpp:145
#52 0x005bf825 in clang::Parser::ParseStatement (this=0xbfffdfa0) at
Parser.h:1071
#53 0x005ba2a7 in clang::Parser::ParseForStatement (this=0xbfffdfa0, Attr=0x0)
at ParseStmt.cpp:1071
#54 0x005b930d in clang::Parser::ParseStatementOrDeclaration (this=0xbfffdfa0,
OnlyStatement=true) at ParseStmt.cpp:161
#55 0x005bf825 in clang::Parser::ParseStatement (this=0xbfffdfa0) at
Parser.h:1071
#56 0x005ba2a7 in clang::Parser::ParseForStatement (this=0xbfffdfa0, Attr=0x0)
at ParseStmt.cpp:1071
#57 0x005b930d in clang::Parser::ParseStatementOrDeclaration (this=0xbfffdfa0,
OnlyStatement=false) at ParseStmt.cpp:161
#58 0x005bd618 in clang::Parser::ParseCompoundStatementBody (this=0xbfffdfa0,
isStmtExpr=false) at ParseStmt.cpp:469
#59 0x005bdceb in clang::Parser::ParseFunctionStatementBody (this=0xbfffdfa0,
Decl={Ptr = 0x46ae3e0}) at ParseStmt.cpp:1432
#60 0x005c85f7 in clang::Parser::ParseFunctionDefinition (this=0xbfffdfa0,
D=@0xbfffd300, TemplateInfo=@0xbfffd60c) at Parser.cpp:693
#61 0x0058b9a5 in clang::Parser::ParseDeclGroup (this=0xbfffdfa0,
DS=@0xbfffd72c, Context=0, AllowFunctionDefinitions=true, DeclEnd=0x0) at
ParseDecl.cpp:409
#62 0x005c6b33 in clang::Parser::ParseDeclarationOrFunctionDefinition
(this=0xbfffdfa0, DS=@0xbfffd72c, Attr=0x0, AS=clang::AS_none) at
Parser.cpp:600
#63 0x005c6b80 in clang::Parser::ParseDeclarationOrFunctionDefinition
(this=0xbfffdfa0, Attr=0x0, AS=clang::AS_none) at Parser.cpp:607
#64 0x005c7960 in clang::Parser::ParseExternalDeclaration (this=0xbfffdfa0,
Attr={AttrList = 0x0, Range = {B = {ID = 0}, E = {ID = 0}}, HasAttr = false})
at Parser.cpp:496
#65 0x005c7a9e in clang::Parser::ParseTopLevelDecl (this=0xbfffdfa0,
Result=@0xbfffe0bc) at Parser.cpp:368
#66 0x0021afec in clang::ParseAST (PP=@0x3401f00, Consumer=0x3405710,
Ctx=@0x3823400, PrintStats=false, CompleteTranslationUnit=true,
CompletionConsumer=0x0) at ParseAST.cpp:67
#67 0x0003e962 in clang::ASTFrontendAction::ExecuteAction (this=0x3402d20) at
FrontendAction.cpp:219
#68 0x0003e852 in clang::FrontendAction::Execute (this=0x3402d20) at
FrontendAction.cpp:149
#69 0x0002057d in clang::CompilerInstance::ExecuteAction (this=0xbfffe484,
Act=@0x3402d20) at CompilerInstance.cpp:509
#70 0x00003514 in cc1_main (ArgBegin=0xbfffe8c8, ArgEnd=0xbfffe990,
Argv0=0xbfffea4c "/Users/az/Programmierung/CppIDE/llvm-src/Debug/bin/clang",
MainAddr=0x62e0) at cc1_main.cpp:269
#71 0x0000718d in main (argc=52, argv=0xbfffe8c0) at driver.cpp:209
(gdb)

-- 
Configure bugmail: http://www.llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the llvm-bugs mailing list