aboutsummaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2008-04-08Make SourceManager::getFullFilePos() public.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49402 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-08Changed the Decl::Kind enum of the ObjCPropertyDecl class, so that it followsSam Bishop
the pattern of the other Decl classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49399 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-08Add support for C++ default arguments, and rework Parse-Sema Chris Lattner
interaction for function parameters, fixing PR2046. Patch by Doug Gregor! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49369 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07Pass the ASTContext object around when deserializing Decl and Stmt objects, soSam Bishop
they can be created using the same allocator as in the "from source code" case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49353 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07simplify array compatibility testing.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49326 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07simplify compatibility testing for tag types.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49323 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07Fix a really bad bug where type uniquing would merge a<x> with b<x> as the sameChris Lattner
type, because it did not include a/b in the hash. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49321 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07Remove a dead check for compatible builtin typesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49319 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07futher simplify compatibility testing of objc interface types.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49318 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07simplify vector type compatibility testing.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49314 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07move ObjCQualifiedIdTypesAreCompatible out of ASTContext into Sema.Chris Lattner
While it is similar to the other compatibility predicates in ASTContext, it is not used by them and is different. In addition, greatly simplify ObjCQualifiedIdTypesAreCompatible and fix some canonical type bugs. Also, simplify my Type::getAsObjC* methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49313 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07improve comments.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49311 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07add an example.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49309 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07eliminate getReferencedProtocols from Chris Lattner
ObjCQualifiedIdType/ObjCQualifiedInterfaceType, adding an interator interface instead. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49308 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07make QualifiedInterfaceTypesAreCompatible a static functionChris Lattner
and start simplifying it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49307 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07This predicate is just a generic "issuperclass" predicate, move it to theChris Lattner
ObjCInterfaceType as a method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49306 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07Simplify some objc compatibility testing, make interfaceTypesAreCompatibleChris Lattner
a static function named isCompatibleInterfaceAssign. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49305 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-07clean up some logic in objc type handling. Specifically, make it so thatChris Lattner
there are QualType::getAsObjc* type methods, and make isa<ObjCInterfaceType> return true for ObjCQualifiedInterfaceType's. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49300 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06simplify max type computation by making it return an integer (like Chris Lattner
getFloatingTypeOrder) instead of a type. Fix a fixme. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49297 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06minor simplifications/cleanups to type comparisons.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49296 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06remove the Decl::getCanonicalType() method.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49295 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06Start switching clients over from CT.getCanonicalType() to ↵Chris Lattner
Context.getCanonicalType(CT) for PR2189. While I'm at it, clean up a bit of maxIntegerType. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49292 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06introduce a new ASTContext::getCanonicalType method. This is the firstChris Lattner
step towards fixing PR2189. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49291 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06Make EnumType/RecordType classof predicates simpler and more efficient inChris Lattner
some cases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49287 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06add a helper EnumType object for asking about tagtypes for enums.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49286 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06reject 'typedef int y; int test(x, y)'.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49270 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06split parsing of identifier lists in function declarators out intoChris Lattner
their own method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49268 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06split code for handling grouping parens in declarators from code thatChris Lattner
handles function argument parens in declarators. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49265 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06Use token lookahead to simplify some code that is rarely executed.Chris Lattner
Since it is rare, the cost is not significant and we enjoy the simplification. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49263 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06Fix a bug I introduced in my const'ification patch.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49262 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06This patch contains these changes:Chris Lattner
-Renamed ContextDecl -> DeclContext -Removed DeclContext pointer from FieldDecl -EnumDecl inherits from DeclContext, instead of TagDecl Patch by Argiris Kirtzidis! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49261 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06don't dereference hte end iterator when inserting at end of buffer.Chris Lattner
Patch by Cédric Venet! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49259 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-06fix a number of const qualification bugs.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49257 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-05Fix handling of implicit int, resolving PR2012 and reverting (andChris Lattner
subsuming) my patch for PR1999. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49251 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-05Step #1 to fixing PR2012: c89 allows declspecs to be completely Chris Lattner
missing from function definitions only. If we see a function definiton with missing declspecs, just fudge in an int. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49250 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-04Rename ScopedDecl::getContext() -> getContextDecl(). Two motivations:Steve Naroff
#1: To be consistent with FieldDecl::getContextDecl(), which serves the same purpose. #2: From my perspective, getContext() is too general (and used by several other classes for different purposes). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49224 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-04add an isAnyComplexType() method, which returns true for bothChris Lattner
integer and FP complexes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49219 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-04Add explicit support for diagnosing implicit function decls.Steve Naroff
Without this, the diagnostic is very confusing. The diag is now consistent with gcc as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49214 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-04Introduce ContextDecl, patch by Argiris Kirtzidis!Chris Lattner
-Added ContextDecl (no TranslationUnitDecl) -ScopedDecl class has a ContextDecl member -FieldDecl class has a ContextDecl member, so that a Field or a ObjCIvar can be traced back to their RecordDecl/ObjCInterfaceDecl easily -FunctionDecl, ObjCMethodDecl, TagDecl, ObjCInterfaceDecl inherit from ContextDecl. With TagDecl as ContextDecl, enum constants have a EnumDecl as their context. -Moved Decl class to a "DeclBase.h" along with ContextDecl class -CurContext is handled by Sema git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49208 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03Make typedefs public.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49185 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03Hooked up GRSimpleAPICheck and the simple Objective-C Foundation checks to useTed Kremenek
the new BugReporter interface. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49180 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03Mark nodes as sinks that GRAuditor says should be marked as sinks.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49179 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03Added "getLogicalLineNumber" and "getLogicalColumnNumber" to FullSourceLoc.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49177 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03Added "isFileID()" to FullSourceLoc.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49148 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03Created a destructor so that the top-level decls can be deleted.Sam Bishop
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49142 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03Temporarily make the Decl virtual destructor public, so that calls to "delete"Sam Bishop
can be tested on derived classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49141 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03Added node_iterator to ExplodedGraph to allow iteration over all nodes inTed Kremenek
the graph. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49132 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03Created new path-sensitive bug-reporting scheme based on the classesTed Kremenek
"BugReporter" and "BugDescription". BugDescription is used to describe a bug and provide pieces of the PathDiagnostic, and BugReporter creates the actual PathDiagnostic by crawling through the ExplodedGraph. Migrated checks done by GRSimpleVals to be reported using the new BugReporter mechanism. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49127 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03Added missing #ifndef...#define...#endif directives to protect againstTed Kremenek
double includes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49126 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-02Fix initialization bug.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49115 91177308-0d34-0410-b5e6-96231b3b80d8