aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2010-11-28Add a CGCXXABI.cpp file.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120249 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-28Look through parentheses when deciding whether an expr is a temporary ↵Anders Carlsson
object. Fixes PR8683. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120247 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-28Add GCC 4.4.5 for Gentoo, and order them in a more sensible way. This allowsChandler Carruth
Gentoo systems with multiple versions to pick up the newest one first. This is especially important with Gentoo because some of the older versions are left on systems in strange states. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120238 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-28Add missing else.Rafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120231 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-26Allow access to non-static members without an object in sizeof expressions, ↵Sebastian Redl
in C++0x. Patch by Jakub Wieczorek. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120182 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-26For internal consistency's sake, compute the value kind of a dependent castJohn McCall
based on the known properties of the casted-to type. Fixes a crash on spirit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120180 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-26Do not use StripCasts() in this context.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120178 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-26Should not use StripCasts() in this context.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120177 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-26Rename CXXObjectRegion to CXXTempObjectRegion.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120176 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-26Regionstore: support derived-to-base cast by creating a CXXBaseObjectRegion.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120173 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-26Add a fixme.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120172 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25Add C++ header path for openSUSE 11.4.Rafael Espindola
Patch by İsmail Dönmez. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120154 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25Hide a bunch of symbols.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120153 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25For CFGAutomaticObjDtor, the type may be reference type, e.g., const A &c = A();Zhongxing Xu
Also apply some new coding style. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120144 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25handle CXXFunctionalCastExpr in visitLValue and Environment.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120143 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25Improve comments.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120142 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25Add dump method.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120141 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25Begin work on actually laying out virtual bases.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120140 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25Move isNearlyEmpty out into the ASTContext so it can be called from CodeGen ↵Anders Carlsson
as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120137 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25Tie DefineVTablesUsed() in with recursive function instantiation so that we emitNick Lewycky
a useful template instantiation stack. Fixes PR8640. This also causes a slight change to where the "instantianted from" note shows up in truly esoteric cases (see the change to test/SemaCXX/destructor.cpp), but that isn't directly the fault of this patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120135 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Remove the PrimaryBaseInfo class.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120134 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Rename RecordLayout::getPrimaryBaseWasVirtual to isPrimaryBaseVirtual.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120133 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Move code off the primary base info iterator. No functionality change.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120132 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Use the newly added function in ASTRecordLayoutBuilder.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120131 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Fix typo.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120130 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Add CXXRecordDecl::getIndirectPrimaryBases.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120129 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Simplify code.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120118 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Fix a (probably very old) regression where we weren't using the typedef name ↵Anders Carlsson
for anonymous tag types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120113 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Revert r120110. We don't want to call ConvertType from within getCGRecordLayout.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120112 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Use ConvertType instead of ConvertTagDeclType, since ConvertType will assign ↵Anders Carlsson
a name to the type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120110 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Simplify code.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120109 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Fix build.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120108 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Make CodeGenTypes::getCGRecordLayout compute the layout lazily if it doesn't ↵Anders Carlsson
exist. This matches ASTContext::getASTRecordLayout and is less confusing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120107 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24CGRecordLayout types are always struct types.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120106 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24When getting CXXThisRegion from CXXMethodDecl, use the qualifiers. This is Zhongxing Xu
to be consistent with the type of 'this' expr in the method. 此行及以下内容将会被忽略-- M test/Analysis/method-call.cpp M include/clang/Checker/PathSensitive/GRExprEngine.h M lib/Checker/GRCXXExprEngine.cpp git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120094 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Let StackFrameContext represent if the call expr is evaluated as lvalue.Zhongxing Xu
This is required for supporting const reference to temporary objects. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120093 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Appease versions of GCC which don't correctly support injected classJohn McCall
names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120091 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24This is probably an important file.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120089 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Add -cc1 -ast-dump-xml, an excessively detailed XML dump of the internalsJohn McCall
of the ASTs. Only available in assertions builds. No stability guarantee. This is intended solely as a debugging tool. I'm not sure if the goals are sufficiently aligned with the XML printer to allow a common implementation. Currently just falls back on the StmtDumper to display statements, which means it doesn't produce valid XML in those cases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120088 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Use StackFrameContext directly in CallEnter program point. Then we don't needZhongxing Xu
to remake the stackframe everytime in GRExprEngine::ProcessCallEnter(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120087 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24print asLValue attribute of CFGStmt.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120086 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Switch a lot of call-sites over to using the new value-kind calculations.John McCall
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120084 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Refactor AddStmtChoice to make it easier to use; also add comments on how ↵Zhanyong Wan
the class works. Reviewed by kremenek. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120080 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Fix 2 problems with Chris Lattner's FileManager redesign on Windows.Francois Pichet
- FileEntry::operator= is needed on Win32. - There was an error in the S_ISDIR() macro. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120079 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Add an assert() to catch errors using EvalLoad(). Reviewed by kremenek.Zhanyong Wan
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120073 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-24Adjust method calls to reflect name changes inTed Kremenek
ImmutableSet/ImmtuableMap/ImmutableList APIs. Along the way, clean up some method names in the static analyzer so that they are more descriptive and/or start with lowercase letters. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120071 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-23The final result of all this refactoring: instead of doing stat immediatelyChris Lattner
followed by an open for every source file we open, probe the file system with 'open' and then do an fstat when it succeeds. open+fstat is faster than stat+open because the kernel only has to perform the string->inode mapping once. Presumably it gets faster the deeper in your filesystem a lookup happens. For -Eonly on cocoa.h, this reduces system time from 0.042s to 0.039s on my machine, a 7.7% speedup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120066 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-23Redeclarations of using declarations are not okay in function scopes.John McCall
Not sure what I was thinking before. Fixes PR8668. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120063 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-23if we succeed in opening a directory but expected a file, ensure we don'tChris Lattner
leak a filedescriptor if a client ever starts returning one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120062 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-23hopefully resolve the windows buildbot issue (retch)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120061 91177308-0d34-0410-b5e6-96231b3b80d8