[LLVMbugs] [Bug 3769] Crash with dot syntax on class methods

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Tue Mar 10 11:07:33 PDT 2009


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


Fariborz Jahanian <fjahanian at apple.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
         Resolution|                            |FIXED




--- Comment #10 from Fariborz Jahanian <fjahanian at apple.com>  2009-03-10 13:07:32 ---
(In reply to comment #9)
> 
> (gdb) run crash.m -S
> Starting program: /Users/snaroff/llvm/Debug/bin/clang crash.m -S
> 
> Program received signal EXC_BAD_ACCESS, Could not access memory.
> Reason: KERN_PROTECTION_FAILURE at address: 0x00000004
> 0x0013d161 in clang::Stmt::getStmtClass (this=0x0) at Stmt.h:152
> warning: Source file is more recent than executable.
> 152       StmtClass getStmtClass() const { return sClass; }
> (gdb) where
> #0  0x0013d161 in clang::Stmt::getStmtClass (this=0x0) at Stmt.h:152
> #1  0x00166311 in clang::Expr::classof (T=0x0) at Expr.h:268
> #2  0x00242f5d in llvm::isa_impl<clang::Expr, clang::Stmt> (Val=@0x0) at
> Casting.h:54
> #3  0x00167ed5 in llvm::isa_impl_wrap<clang::Expr, clang::Stmt const,
> clang::Stmt const>::doit (Val=@0x0) at Casting.h:71
> #4  0x00242f75 in llvm::isa_impl_cl<clang::Stmt>::isa<clang::Expr> (Val=@0x0)
> at Casting.h:83
> #5  0x00167eed in llvm::isa_impl_cl<clang::Stmt*>::isa<clang::Expr> (Val=0x0)
> at Casting.h:101
> #6  0x00242f8f in llvm::isa<clang::Expr, clang::Stmt*> (Val=@0x2308cec) at
> Casting.h:116
> #7  0x00242fac in llvm::cast<clang::Expr, clang::Stmt*> (Val=@0x2308cec) at
> Casting.h:199
> #8  0x00266626 in clang::ObjCKVCRefExpr::getBase (this=0x2308cd0) at
> ExprObjC.h:284
> #9  0x00096066 in clang::CodeGen::CodeGenFunction::EmitObjCPropertyGet
> (this=0xbfffea50, Exp=0x2308cd0) at CGObjC.cpp:333
> #10 0x0007810d in clang::CodeGen::CodeGenFunction::EmitLoadOfKVCRefLValue
> (this=0xbfffea50, LV={LVType = clang::CodeGen::LValue::KVCRef, V = 0x20,
> {VectorIdx = 0x2308cd0, VectorElts = 0x2308cd0, BitfieldData = {StartBit =
> 36048, Size = 560, IsSigned = 142}, PropertyRefExpr = 0x2308cd0, KVCRefExpr =
> 0x2308cd0}, Volatile = false, Restrict = false, Ivar = false, NonGC = false,
> ObjCType = 0}, ExprType={Value = {Value = 36734832}}) at CGExpr.cpp:337
> #11 0x0007b3af in clang::CodeGen::CodeGenFunction::EmitLoadOfLValue
> (this=0xbfffea50, LV={LVType = clang::CodeGen::LValue::KVCRef, V = 0x20,
> {VectorIdx = 0x2308cd0, VectorElts = 0x2308cd0, BitfieldData = {StartBit =
> 36048, Size = 560, IsSigned = 142}, PropertyRefExpr = 0x2308cd0, KVCRefExpr =
> 0x2308cd0}, Volatile = false, Restrict = false, Ivar = false, NonGC = false,
> ObjCType = 0}, ExprType={Value = {Value = 36734832}}) at CGExpr.cpp:263
> #12 0x00090bb0 in (anonymous namespace)::ScalarExprEmitter::EmitLoadOfLValue
> (this=0xbfffe398, LV={LVType = clang::CodeGen::LValue::KVCRef, V = 0x20,
> {VectorIdx = 0x2308cd0, VectorElts = 0x2308cd0, BitfieldData = {StartBit =
> 36048, Size = 560, IsSigned = 142}, PropertyRefExpr = 0x2308cd0, KVCRefExpr =
> 0x2308cd0}, Volatile = false, Restrict = false, Ivar = false, NonGC = false,
> ObjCType = 0}, T={Value = {Value = 36734832}}) at CGExprScalar.cpp:65
> #13 0x00090c53 in (anonymous namespace)::ScalarExprEmitter::EmitLoadOfLValue
> (this=0xbfffe398, E=0x2308cd0) at CGExprScalar.cpp:73
> #14 0x00090eec in (anonymous namespace)::ScalarExprEmitter::VisitObjCKVCRefExpr
> (this=0xbfffe398, E=0x2308cd0) at CGExprScalar.cpp:154
> #15 0x000948d1 in clang::StmtVisitor<(anonymous namespace)::ScalarExprEmitter,
> llvm::Value*>::Visit (this=0xbfffe398, S=0x2308cd0) at StmtNodes.def:130
> #16 0x0008eee7 in clang::CodeGen::CodeGenFunction::EmitScalarExpr
> (this=0xbfffea50, E=0x2308cd0) at CGExprScalar.cpp:1339
> #17 0x00076cbd in clang::CodeGen::CodeGenFunction::EmitLocalBlockVarDecl
> (this=0xbfffea50, D=@0x2308c80) at CGDecl.cpp:321
> #18 0x000775ca in clang::CodeGen::CodeGenFunction::EmitBlockVarDecl
> (this=0xbfffea50, D=@0x2308c80) at CGDecl.cpp:74
> #19 0x00077716 in clang::CodeGen::CodeGenFunction::EmitDecl (this=0xbfffea50,
> D=@0x2308c80) at CGDecl.cpp:47
> #20 0x000bcfb8 in clang::CodeGen::CodeGenFunction::EmitDeclStmt
> (this=0xbfffea50, S=@0x2308d00) at CGStmt.cpp:500
> #21 0x000bf149 in clang::CodeGen::CodeGenFunction::EmitStmt (this=0xbfffea50,
> S=0x2308d00) at CGStmt.cpp:80
> #22 0x000c051e in clang::CodeGen::CodeGenFunction::EmitCompoundStmt
> (this=0xbfffea50, S=@0x2308d20, GetLast=false, AggLoc=0x0, isAggVol=false) at
> CGStmt.cpp:144
> #23 0x000c0745 in clang::CodeGen::CodeGenFunction::EmitSimpleStmt
> (this=0xbfffea50, S=0x2308d20) at CGStmt.cpp:110
> #24 0x000bef04 in clang::CodeGen::CodeGenFunction::EmitStmt (this=0xbfffea50,
> S=0x2308d20) at CGStmt.cpp:43
> #25 0x000c0344 in clang::CodeGen::CodeGenFunction::EmitIfStmt (this=0xbfffea50,
> S=@0x2308d50) at CGStmt.cpp:286
> #26 0x000bf0ae in clang::CodeGen::CodeGenFunction::EmitStmt (this=0xbfffea50,
> S=0x2308d50) at CGStmt.cpp:74
> #27 0x000c051e in clang::CodeGen::CodeGenFunction::EmitCompoundStmt
> (this=0xbfffea50, S=@0x2308d70, GetLast=false, AggLoc=0x0, isAggVol=false) at
> CGStmt.cpp:144
> #28 0x000c0745 in clang::CodeGen::CodeGenFunction::EmitSimpleStmt
> (this=0xbfffea50, S=0x2308d70) at CGStmt.cpp:110
> #29 0x000bef04 in clang::CodeGen::CodeGenFunction::EmitStmt (this=0xbfffea50,
> S=0x2308d70) at CGStmt.cpp:43
> #30 0x0009767c in clang::CodeGen::CodeGenFunction::GenerateObjCMethod
> (this=0xbfffea50, OMD=0x2308990) at CGObjC.cpp:134
> #31 0x000cc38d in clang::CodeGen::CodeGenModule::EmitTopLevelDecl
> (this=0x280f000, D=0x2308990) at CodeGenModule.cpp:1269
> #32 0x000daea7 in (anonymous namespace)::CodeGeneratorImpl::HandleTopLevelDecl
> (this=0x2304710, D=0x2308990) at ModuleBuilder.cpp:72
> #33 0x00014438 in (anonymous namespace)::BackendConsumer::HandleTopLevelDecl
> (this=0x23045b0, D=0x2308990) at Backend.cpp:132
> #34 0x00178b2a in clang::ParseAST (PP=@0x2304300, Consumer=0x23045b0,
> TU=0x23053b0, PrintStats=false) at ParseAST.cpp:71
> #35 0x0004ff85 in ProcessInputFile (PP=@0x2304300, PPF=@0xbffff7ec,
> InFile=@0x2302610, PA=EmitAssembly) at clang.cpp:1387
> #36 0x0005085c in main (argc=3, argv=0xbffff8cc) at clang.cpp:1586
> (gdb) 
> 

ir gen fixed in tot at:
http://llvm.org/viewvc/llvm-project?view=rev&revision=66556


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