aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-06-23Tweak tests to hopefully fix include of limits.h on win32.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106639 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-23Add isArrayType() to CanProxy's forwarders.Sebastian Redl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106629 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-23Support C++ class template specializations and partial specializations for PCH.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106625 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-23Modify ClassTemplateSpecializationDecl and ↵Argyrios Kyrtzidis
ClassTemplatePartialSpecializationDecl to allow PCH read/write. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106624 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-23improve altivec vector bool/pixel support, patch by Anton YartsevChris Lattner
with several tweaks by me. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106619 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-23polish the -finstrument-functions implementation, patch by Nelson Elhage!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106618 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-23add comments.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106617 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-23add comments.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106616 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Correctly construct an ElementRegion for alloca() + pointer arithmetic. ↵Ted Kremenek
Fixes analyzer crash reported in PR 7450. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106609 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22String literals enclosed in parentheses are still stringDouglas Gregor
literals. Fixes PR7488. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106607 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Make c++ and C++ valid extensions for C++ source files, from Seth Cantrell!Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106602 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Vector types are not arithmetic types, either. Note that we now banDouglas Gregor
__real myvec and __imag myvec, since they aren't all that useful (it's just an identity function) but we might want to use them in more restricted cases in the future (e.g., "__real mycomplexvec" could extract the real parts of a vector of complex numbers). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106601 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Patch to provide separate ASTs for multiple ObjC class extension Fariborz Jahanian
declarations (implements radar 7928731). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106597 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Teach Type::isRealType() that vector types are never real types. AllDouglas Gregor
of the callers of isRealType() already assumed this, and one of them (increment/decrement) mistakenly permitted increments of vector types because of it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106596 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Type Type::isRealFloatingType() that vectors are not floating-pointDouglas Gregor
types, updating callers of both isFloatingType() and isRealFloatingType() accordingly. Caught at least one issue where we allowed one to declare a vector of vectors (!), along with cleaning up the standard-conversion logic for C++. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106595 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Support -mios-version-min= as an alias for -miphoneos-version-min=.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106587 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Change Type::isFloatingType() to reflect the actual definition of aDouglas Gregor
"floating type" in C, which does not include vector types. Introduce Type::hasFloatingRepresentation() for the places where we want to know whether the underlying representation is one or more floating-point values. Remove some hacks we had where the former behavior of Type::isFloatingType() was at odds with the language definition of the term. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106584 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Driver: Remove some dead code left around after a refactoring. Found by theDaniel Dunbar
Clang static analyzer! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106568 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Don't assert on C++ casts that are currently not handled by the static analyzer.Ted Kremenek
Instead, halt the analysis of the current path, which is what we do in GRExprEngine::ProcessStmt for all other C++ constructs not currently handled by the analyzer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106561 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Trying to make BuildBot happy again (related to PR7431).Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106553 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Read/write CXXDeleteExpr from/to PCH.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106552 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Don't allow vector conversions to sneak in under the guise ofDouglas Gregor
floating-point conversions or floating-integral conversions. We really, really, really need to make isFloatingType() and friends not apply to vector types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106551 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Fixes a problem in generation of meta-data forFariborz Jahanian
category implementation whereby property list was missing. NeXt ObjC runtime (radar 8093297). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106550 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Switch over to the new caching version of getMangledName.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106549 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Add a new variant of getMangledName that caches the mangling for decls.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106547 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Add GlobalDecl::getCanonicalDecl.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106546 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22When we ask for the enumerators of an EnumDecl, make sure we get them even ↵Douglas Gregor
if we have a EnumDecl that is not the definition of the enumeration git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106541 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22In C++, allow a declaration of an enum to follow a definition of thatDouglas Gregor
enum as a GNU extension. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106540 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Fix PR7180.Argyrios Kyrtzidis
For void f( a::b::c ); we would cache the tokens "a::b::" but then we would try to annotate them using the range "a::". Before annotating them with the (invalid) C++ scope spec, set it to the range of "a::b::". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106536 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Support emitting/reading function templates to/from PCH.Argyrios Kyrtzidis
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106534 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22-Introduce PCHReader::ReadTemplateArgumentLoc()Argyrios Kyrtzidis
-Introduce PCHWriter::AddTemplateArgumentLocInfo() -Modify PCHWriter::AddTemplateArgumentLoc() to also write TemplateArgumentLoc's TemplateArgument and move the existing calls of AddTemplateArgumentLoc() to AddTemplateArgumentLocInfo(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106533 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Make it easier to read/write the template part of FunctionDecl.Argyrios Kyrtzidis
Introduce: -FunctionDecl::getTemplatedKind() which returns an enum signifying what kind of templated FunctionDecl it is. -An overload of FunctionDecl::setFunctionTemplateSpecialization() which accepts arrays of TemplateArguments and TemplateArgumentLocs -A constructor to TemplateArgumentList which accepts an array of TemplateArguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106532 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Silence warning about C++-style comments.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106531 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Add a bunch of stream APIs to SteamChecker.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106530 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Apply array-to-pointer decay when instantiating a MemberExpr. FixesDouglas Gregor
PR7405, patch by Kyle Lippincott! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106523 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Attempt to fix testDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106522 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22Per Chris's comment, remove another static (this oneFariborz Jahanian
is a static comparator operator). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106511 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-22implement support for -finstrument-functions, patch by NelsonChris Lattner
Elhage! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106507 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21Alter the internal representation of the condition variable inDouglas Gregor
if/while/switch/for statements to ensure that walking the children of these statements actually works. Previously, we stored the condition variable as a VarDecl. However, StmtIterator isn't able to walk from a VarDecl to a set of statements, and would (in some circumstances) walk beyond the end of the list of statements, cause Bad Behavior. In this change, we've gone back to representing the condition variables as DeclStmts. While not as memory-efficient as VarDecls, it greatly simplifies iteration over the children. Fixes the remainder of <rdar://problem/8104754>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106504 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21Avoid using a local static for providing lexicalFariborz Jahanian
order of priorotized global object initializations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106503 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21Zero out a stale pointerDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106497 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21When semantic analysis fail to introduce a class or class template,Douglas Gregor
just skip over the body of the class or class template: it's a semantic disaster that's likely to cause invariants to break. Fixes part of <rdar://problem/8104754>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106496 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21Update checker build.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106495 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21Test case for PR7431 by Nico Weber.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106494 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21In fragile-abi (32bit mode abi) generate global symbolFariborz Jahanian
objc_category_name_xxx for each category implementation. (fixes PR7431) patch by Nico Weber. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106492 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21In supporting init-priority, globals with the same init_priority must beFariborz Jahanian
emitted in the order in which they are seen (still radar 8076356). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106485 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21Bug 7377: printf checking fails to flag some undefined behavior Tom Care
http://llvm.org/bugs/show_bug.cgi?id=7377 Updated format string highlighting and fixits to take advantage of the new CharSourceRange class. - Change HighlightRange to allow highlighting whitespace only in a CharSourceRange (for warnings about the ' ' (space) flag) - Change format specifier range helper function to allow for half-open ranges (+1 to end) - Enabled previously failing tests (FIXMEs/XFAILs removed) - Small fixes and additions to format string test cases M test/Sema/format-strings.c M test/Sema/format-strings-fixit.c M lib/Frontend/TextDiagnosticPrinter.cpp M lib/Sema/SemaChecking.cpp git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106480 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21Fix an Obj-C++ miscompile when calling an Obj-C method that returns a C++ ↵Anders Carlsson
reference. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106477 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21Add CXType support for querying the return type of Objective-C methods. ↵Ted Kremenek
This is done by adding a clang_getCursorResultType() function (which complements clang_getResultType()). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106473 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-21accept and ignore two more gcc warning flags.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106472 91177308-0d34-0410-b5e6-96231b3b80d8