[LLVMbugs] [Bug 7176] New: Assertion failed: (BaseType.isCanonical() && "Base type must be the canonical type")

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed May 19 15:16:53 PDT 2010


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

           Summary: Assertion failed: (BaseType.isCanonical() && "Base
                    type must be the canonical type")
           Product: clang
           Version: trunk
          Platform: Macintosh
        OS/Version: MacOS X
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: niebuhr at niebuhrt.de
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


This is what I did.
The included libraries compile just fine but compiling this object trigers an
assertion.
Let me know if you need some code. 


/Users/gmthor85/llvm//llvm/Debug/bin/clang++ -c fire.cpp -O2  -I ~/Downloads/
-I ~/Downloads/odemx/external/poco.rev.1094/Data/include/ -I
~/Downloads/odemx/external/poco.rev.1094/Foundation/include/ -I
~/Downloads/odemx/external/poco.rev.1094/XML/include/ -I
~/Downloads/odemx/external -I
~/Downloads/odemx/external/poco.rev.1094/Data/SQLite/include
Assertion failed: (BaseType.isCanonical() && "Base type must be the canonical
type"), function isAmbiguous, file CXXInheritance.cpp, line 53.
0  clang             0x0000000100fd345c PrintStackTrace(void*) + 38
1  clang             0x0000000100fd393c SignalHandler(int) + 312
2  libSystem.B.dylib 0x00007fff87f5f80a _sigtramp + 26
3  libSystem.B.dylib 0x00007fff87f0450a tiny_malloc_from_free_list + 1196
4  libSystem.B.dylib 0x00007fff87fdaef0 __pthread_markcancel + 0
5  clang             0x0000000100552b3a
clang::CXXBasePaths::isAmbiguous(clang::QualType) + 82
6  clang             0x0000000100256e11
TryStaticMemberPointerUpcast(clang::Sema&, clang::Expr*&, clang::QualType,
clang::QualType, bool, clang::SourceRange const&, unsigned int&,
clang::CastExpr::CastKind&, clang::UsuallyTinyPtrVector<clang::CXXBaseSpecifier
const>&) + 608
7  clang             0x0000000100257fa0 TryStaticCast(clang::Sema&,
clang::Expr*&, clang::QualType, bool, clang::SourceRange const&, unsigned int&,
clang::CastExpr::CastKind&, clang::UsuallyTinyPtrVector<clang::CXXBaseSpecifier
const>&) + 667
8  clang             0x0000000100259989
clang::Sema::CXXCheckCStyleCast(clang::SourceRange, clang::QualType,
clang::Expr*&, clang::CastExpr::CastKind&,
clang::UsuallyTinyPtrVector<clang::CXXBaseSpecifier const>&, bool) + 387
9  clang             0x00000001002f474a
clang::Sema::CheckCastTypes(clang::SourceRange, clang::QualType, clang::Expr*&,
clang::CastExpr::CastKind&, clang::UsuallyTinyPtrVector<clang::CXXBaseSpecifier
const>&, bool) + 166
10 clang             0x00000001002f5175
clang::Sema::BuildCStyleCastExpr(clang::SourceLocation, clang::TypeSourceInfo*,
clang::SourceLocation,
clang::ASTOwningResult<&(clang::ActionBase::DeleteExpr(void*))>) + 165
11 clang             0x00000001002f5f17
clang::Sema::ActOnCastExpr(clang::Scope*, clang::SourceLocation, void*,
clang::SourceLocation,
clang::ASTOwningResult<&(clang::ActionBase::DeleteExpr(void*))>) + 527
12 clang             0x0000000100612115
clang::Parser::ParseParenExpression(clang::Parser::ParenParseOption&, bool,
void*, void*&, clang::SourceLocation&) + 2017
13 clang             0x000000010060f0f9
clang::Parser::ParseCastExpression(bool, bool, bool&, void*) + 1105
14 clang             0x000000010061188f
clang::Parser::ParseCastExpression(bool, bool, void*) + 97
15 clang             0x000000010060c2ad
clang::Parser::ParseAssignmentExpression() + 237
16 clang             0x000000010060c4cd
clang::Parser::ParseExpressionList(llvm::SmallVector<void*, 12u>&,
llvm::SmallVector<clang::SourceLocation, 12u>&, void
(clang::Action::*)(clang::Scope*, void*, void**, unsigned int), void*) + 245
17 clang             0x000000010060cdc7
clang::Parser::ParsePostfixExpressionSuffix(clang::ASTOwningResult<&(clang::ActionBase::DeleteExpr(void*))>)
+ 1155
18 clang             0x000000010060fa4a
clang::Parser::ParseCastExpression(bool, bool, bool&, void*) + 3490
19 clang             0x000000010061188f
clang::Parser::ParseCastExpression(bool, bool, void*) + 97
20 clang             0x000000010060c2ad
clang::Parser::ParseAssignmentExpression() + 237
21 clang             0x000000010060c828 clang::Parser::ParseExpression() + 42
22 clang             0x000000010062c8cc
clang::Parser::ParseStatementOrDeclaration(bool) + 1636
23 clang             0x0000000100630dfe
clang::Parser::ParseCompoundStatementBody(bool) + 220
24 clang             0x0000000100631429
clang::Parser::ParseFunctionStatementBody(clang::OpaquePtr<0>) + 193
25 clang             0x000000010063ad80
clang::Parser::ParseFunctionDefinition(clang::Parser::ParsingDeclarator&,
clang::Parser::ParsedTemplateInfo const&) + 1240
26 clang             0x00000001005fee2c
clang::Parser::ParseDeclGroup(clang::Parser::ParsingDeclSpec&, unsigned int,
bool, clang::SourceLocation*) + 478
27 clang             0x0000000100639e25
clang::Parser::ParseDeclarationOrFunctionDefinition(clang::Parser::ParsingDeclSpec&,
clang::AttributeList*, clang::AccessSpecifier) + 1053
28 clang             0x0000000100639e91
clang::Parser::ParseDeclarationOrFunctionDefinition(clang::AttributeList*,
clang::AccessSpecifier) + 83
29 clang             0x000000010063bbcd
clang::Parser::ParseExternalDeclaration(clang::CXX0XAttributeList) + 2211
30 clang             0x000000010063bd0b
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<1>&) + 247
31 clang             0x0000000100248cf7 clang::ParseAST(clang::Preprocessor&,
clang::ASTConsumer*, clang::ASTContext&, bool, bool,
clang::CodeCompleteConsumer*) + 456
32 clang             0x00000001000668f6
clang::ASTFrontendAction::ExecuteAction() + 256
33 clang             0x00000001000669f3 clang::FrontendAction::Execute() + 239
34 clang             0x0000000100049892
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 784
35 clang             0x00000001000278b2 cc1_main(char const**, char const**,
char const*, void*) + 1761
36 clang             0x000000010002b719 main + 252
37 clang             0x0000000100026754 start + 52
Stack dump:
0.    Program arguments: /Users/gmthor85/llvm/llvm/Debug/bin/clang -cc1 -triple
x86_64-apple-darwin10.0.0 -S -disable-free -main-file-name fire.cpp -pic-level
1 -mdisable-fp-elim -munwind-tables -target-cpu core2 -resource-dir
/Users/gmthor85/llvm/llvm/Debug/lib/clang/2.0 -I /Users/gmthor85/Downloads/ -I
/Users/gmthor85/Downloads/odemx/external/poco.rev.1094/Data/include/ -I
/Users/gmthor85/Downloads/odemx/external/poco.rev.1094/Foundation/include/ -I
/Users/gmthor85/Downloads/odemx/external/poco.rev.1094/XML/include/ -I
/Users/gmthor85/Downloads/odemx/external -I
/Users/gmthor85/Downloads/odemx/external/poco.rev.1094/Data/SQLite/include -O2
-ferror-limit 19 -fmessage-length 188 -stack-protector 1 -fblocks -fexceptions
-fdiagnostics-show-option -fcolor-diagnostics -o
/var/folders/3C/3Cjb8XqLGZ4CudBSDgvEJE+++TI/-Tmp-/cc-vRD5G6.s -x c++ fire.cpp 
1.    fire.cpp:33:46: current parser token ')'
2.    fire.cpp:28:18: parsing function body 'Fire::main'
3.    fire.cpp:28:18: in compound statement ('{}')
clang: error: compiler command failed due to signal 6 (use -v to see
invocation)
make: *** [fire.o] Error 250

-- 
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