[LLVMbugs] [Bug 6622] New: Assertion failed: Invalid GetElementPtrInst indices for type!

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Mar 15 09:12:54 PDT 2010


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

           Summary: Assertion failed: Invalid GetElementPtrInst indices
                    for 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: Fons.Rademakers at cern.ch
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


Created an attachment (id=4523)
 --> (http://llvm.org/bugs/attachment.cgi?id=4523)
Source file exhibiting the problem

Compiling the attached file with clang++ -c aap.cxx gives:

(proof) [137] clang++ -c aap.cxx
Assertion failed: (Ty && "Invalid GetElementPtrInst indices for type!"),
function checkType, file /Users/rdm/llvm/src/include/llvm/Instructions.h, line
276.
0  clang             0x0000000100d5b628 PrintStackTrace(void*) + 38
1  clang             0x0000000100d5bbb6 SignalHandler(int) + 336
2  libSystem.B.dylib 0x00007fff88a66eaa _sigtramp + 26
3  libSystem.B.dylib 0x00007fff5fbf9f30 _sigtramp + 3608752288
4  libSystem.B.dylib 0x00007fff88ae2e74 __pthread_markcancel + 0
5  clang             0x0000000100b1b66c llvm::checkType(llvm::Type const*) + 59
6  clang             0x0000000100b2863d
llvm::GetElementPtrInst::GetElementPtrInst<llvm::Value**>(llvm::Value*,
llvm::Value**, llvm::Value**, unsigned int, llvm::Twine const&,
llvm::Instruction*) + 135
7  clang             0x0000000100b28726 llvm::GetElementPtrInst*
llvm::GetElementPtrInst::Create<llvm::Value**>(llvm::Value*, llvm::Value**,
llvm::Value**, llvm::Twine const&, llvm::Instruction*) + 121
8  clang             0x0000000100b28768 llvm::GetElementPtrInst*
llvm::GetElementPtrInst::CreateInBounds<llvm::Value**>(llvm::Value*,
llvm::Value**, llvm::Value**, llvm::Twine const&, llvm::Instruction*) + 56
9  clang             0x00000001001a6da0 llvm::IRBuilder<true,
llvm::ConstantFolder, llvm::IRBuilderDefaultInserter<true>
>::CreateConstInBoundsGEP2_32(llvm::Value*, unsigned int, unsigned int,
llvm::Twine const&) + 214
10 clang             0x00000001001a6df3 llvm::IRBuilder<true,
llvm::ConstantFolder, llvm::IRBuilderDefaultInserter<true>
>::CreateStructGEP(llvm::Value*, unsigned int, llvm::Twine const&) + 51
11 clang             0x000000010017618a
clang::CodeGen::CodeGenFunction::EmitLValueForField(llvm::Value*,
clang::FieldDecl const*, unsigned int) + 196
12 clang             0x0000000100176358
clang::CodeGen::CodeGenFunction::EmitLValueForFieldInitialization(llvm::Value*,
clang::FieldDecl const*, unsigned int) + 92
13 clang             0x000000010015ba2b
clang::CodeGen::CodeGenFunction::SynthesizeCXXCopyConstructor(llvm::SmallVector<std::pair<clang::VarDecl
const*, clang::QualType>, 16u> const&) + 1333
14 clang             0x000000010015be6b
clang::CodeGen::CodeGenFunction::EmitConstructorBody(llvm::SmallVector<std::pair<clang::VarDecl
const*, clang::QualType>, 16u>&) + 507
15 clang             0x00000001002060dd
clang::CodeGen::CodeGenFunction::GenerateCode(clang::CodeGen::GlobalDecl,
llvm::Function*) + 1455
16 clang             0x000000010014d99c
clang::CodeGen::CodeGenModule::EmitCXXConstructor(clang::CXXConstructorDecl
const*, clang::CXXCtorType) + 316
17 clang             0x000000010020ee26
clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::CodeGen::GlobalDecl)
+ 460
18 clang             0x000000010020f83b
clang::CodeGen::CodeGenModule::EmitDeferred() + 289
19 clang             0x000000010020fa41
clang::CodeGen::CodeGenModule::Release() + 21
20 clang             0x0000000100228ce5 (anonymous
namespace)::CodeGeneratorImpl::HandleTranslationUnit(clang::ASTContext&) + 91
21 clang             0x000000010003b325 (anonymous
namespace)::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) + 97
22 clang             0x0000000100235de4 clang::ParseAST(clang::Preprocessor&,
clang::ASTConsumer*, clang::ASTContext&, bool, bool,
clang::CodeCompleteConsumer*) + 776
23 clang             0x000000010005a7f8
clang::ASTFrontendAction::ExecuteAction() + 256
24 clang             0x000000010005a8e8 clang::FrontendAction::Execute() + 226
25 clang             0x000000010003e488
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 726
26 clang             0x000000010001e980 cc1_main(char const**, char const**,
char const*, void*) + 1296
27 clang             0x0000000100022719 main + 252
28 clang             0x000000010001d958 start + 52
29 clang             0x000000000000001d start + 4294846201
Stack dump:
0.      Program arguments: /Users/rdm/llvm/inst/bin/clang -cc1 -triple
x86_64-apple-darwin10.0.0 -S -disable-free -main-file-name aap.cxx -pic-level 1
-mdisable-fp-elim -munwind-tables -target-cpu core2 -resource-dir
/Users/rdm/llvm/inst/lib/clang/1.1 -fmessage-length 80 -stack-protector 1
-fblocks -fexceptions -fdiagnostics-show-option -fcolor-diagnostics -o
/var/folders/zK/zKJDfZztH5upJbZEL05q7U+++TI/-Tmp-/cc-a8SXXZ.s -x c++ aap.cxx 
1.      <eof> parser at end of file
2.      Per-file LLVM IR generation
3.      include/Math/FitMethodFunction.h:34:7: Generating code for declaration
'ROOT::Math::BasicFitMethodFunction<ROOT::Math::IGradientFunctionMultiDim>::BasicFitMethodFunction'
clang: error: compiler command failed due to signal 6 (use -v to see
invocation)


With g++ all is fine.

Cheers, Fons.

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