[LLVMbugs] [Bug 11205] New: Segfault compiling constructor of class with anonymous struct

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Oct 21 18:15:19 PDT 2011


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

           Summary: Segfault compiling constructor of class with anonymous
                    struct
           Product: clang
           Version: 2.9
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: igogo.dev at gmail.com
                CC: llvmbugs at cs.uiuc.edu, dgregor at apple.com


Compiling the attached file with the following command

clang++ segfault.cpp

clang crashes with the following output:

0  libLLVM-2.9.so.1 0x00007f8834fedc6f
1  libLLVM-2.9.so.1 0x00007f8834fee211
2  libpthread.so.0  0x00007f8834190020
3  libLLVM-2.9.so.1 0x00007f8834bd24a1 llvm::PointerType::get(llvm::Type
const*, unsigned int) + 17
4  clang            0x000000000063036d llvm::GetElementPtrInst*
llvm::GetElementPtrInst::Create<llvm::Value**>(llvm::Value*, llvm::Value**,
llvm::Value**, llvm::Twine const&, llvm::Instruction*) + 365
5  clang            0x000000000067c2b0
clang::CodeGen::CodeGenFunction::EmitLValueForField(llvm::Value*,
clang::FieldDecl const*, unsigned int) + 912
6  clang            0x000000000067c4c6
clang::CodeGen::CodeGenFunction::EmitLValueForFieldInitialization(llvm::Value*,
clang::FieldDecl const*, unsigned int) + 70
7  clang            0x000000000064fb93
clang::CodeGen::CodeGenFunction::EmitCtorPrologue(clang::CXXConstructorDecl
const*, clang::CXXCtorType, llvm::SmallVector<std::pair<clang::VarDecl const*,
clang::QualType>, 16u>&) + 1203
8  clang            0x00000000006503a7
clang::CodeGen::CodeGenFunction::EmitConstructorBody(llvm::SmallVector<std::pair<clang::VarDecl
const*, clang::QualType>, 16u>&) + 119
9  clang            0x0000000000706625
clang::CodeGen::CodeGenFunction::GenerateCode(clang::CodeGen::GlobalDecl,
llvm::Function*) + 901
10 clang            0x000000000063ad54
clang::CodeGen::CodeGenModule::EmitCXXConstructor(clang::CXXConstructorDecl
const*, clang::CXXCtorType) + 132
11 clang            0x000000000061eac2
clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::CodeGen::GlobalDecl)
+ 482
12 clang            0x000000000061ef02
clang::CodeGen::CodeGenModule::EmitDeferred() + 146
13 clang            0x000000000061ef59 clang::CodeGen::CodeGenModule::Release()
+ 9
14 clang            0x0000000000613d42
clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) + 98
15 clang            0x000000000071cdfb clang::ParseAST(clang::Sema&, bool) +
251
16 clang            0x0000000000612cc3 clang::CodeGenAction::ExecuteAction() +
51
17 clang            0x0000000000545ffb
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 283
18 clang            0x000000000052bfcb
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 971
19 clang            0x00000000005244d2 cc1_main(char const**, char const**,
char const*, void*) + 706
20 clang            0x00000000005230a2 main + 610
21 libc.so.6        0x00007f8833274ead __libc_start_main + 253
22 clang            0x00000000005240b5
Stack dump:
0.      Program arguments: /usr/bin/clang -cc1 -triple x86_64-pc-linux-gnu
-emit-obj -mrelax-all -disable-free -disable-llvm-verifier -main-file-name
segfault.cpp -mrelocation-model static -mdisable-fp-elim -masm-verbose
-mconstructor-aliases -munwind-tables -target-cpu x86-64 -target-linker-version
2.21.90.20111004 -momit-leaf-frame-pointer -resource-dir
/usr/bin/../lib/clang/2.9 -ferror-limit 19 -fmessage-length 170
-fcxx-exceptions -fexceptions -fgnu-runtime -fdiagnostics-show-option
-fcolor-diagnostics -o /tmp/cc-Yxr43r.o -x c++ segfault.cpp 
1.      <eof> parser at end of file
2.      Per-file LLVM IR generation
3.      segfault.cpp:10:2: Generating code for declaration 'B::B'
clang: error: unable to execute command: Segmentation fault
clang: error: clang frontend command failed due to signal 1 (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