summaryrefslogtreecommitdiffstats
path: root/clang/AST/Decl.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Make a major restructuring of the clang tree: introduce a top-levelChris Lattner2008-03-151-652/+0
| | | | | | | | | | lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. llvm-svn: 48402
* move the ASTContext argument to be first in the argument list of Chris Lattner2008-03-151-19/+20
| | | | | | all Create methods. llvm-svn: 48398
* Switch over functiondecl. This makes it obvious that the ASTContextChris Lattner2008-03-151-0/+9
| | | | | | argument to Create should be first, not last. llvm-svn: 48397
* switch the VarDecl allocation model to go through ASTContext.Chris Lattner2008-03-151-0/+22
| | | | llvm-svn: 48396
* start switching decls over to using an allocator controlled by ASTContext. Chris Lattner2008-03-151-1/+32
| | | | | | | | | | Right now only some ctors are switched over. I need to switch them all over so I can change the dtor over. This lets us experiment with region allocation and other things in the future. llvm-svn: 48390
* various minor cleanups.Chris Lattner2008-03-151-112/+63
| | | | llvm-svn: 48389
* convert tabs to spaces, patch by Mike Stump!Chris Lattner2008-02-251-46/+46
| | | | llvm-svn: 47560
* More comments from Chris.Anders Carlsson2008-02-161-12/+12
| | | | llvm-svn: 47210
* Store attributes in a global hash map instead.Anders Carlsson2008-02-151-6/+41
| | | | llvm-svn: 47191
* Get rid of AttributeList in the AST and use the new Attr class insteadAnders Carlsson2008-02-151-0/+6
| | | | llvm-svn: 47155
* Put back the top-level asm code; all tests pass now.Anders Carlsson2008-02-081-1/+6
| | | | llvm-svn: 46868
* Back out 46855 for now, it causes test failures on Darwin.Anders Carlsson2008-02-081-6/+1
| | | | llvm-svn: 46867
* Handle top-level asm declarations.Anders Carlsson2008-02-071-1/+6
| | | | llvm-svn: 46855
* Missing ObjC stuff. Patch by Mike Stump.Fariborz Jahanian2008-01-231-2/+13
| | | | llvm-svn: 46268
* Renamed getSynthesizedSelectorSize to getSynthesizedMethodSize. Compute ↵Fariborz Jahanian2008-01-171-4/+11
| | | | | | | | method name size in accordance with how rewriter synthesizes method name. llvm-svn: 46131
* Computed length of a __func__ identifier used in an objective-c method ↵Fariborz Jahanian2008-01-171-0/+9
| | | | | | | | correctly, when creating its type. llvm-svn: 46109
* Add first pieces of support for parsing and representing Chris Lattner2008-01-121-1/+7
| | | | | | extern "C" in C++ mode. Patch by Mike Stump! llvm-svn: 45904
* Substituted all instances of the string "Objc" for "ObjC". This fixesTed Kremenek2008-01-071-114/+114
| | | | | | | some naming inconsistencies in the names of classes pertaining to Objective-C support in clang. llvm-svn: 45715
* Don't attribute in file headers anymore. See llvmdev for theChris Lattner2007-12-291-2/+2
| | | | | | discussion of this change. llvm-svn: 45410
* Patch to do type-checking for objctive-c's object types.Fariborz Jahanian2007-12-201-2/+2
| | | | | | More is yet to come. llvm-svn: 45263
* Various tweaks to the get/lookup instance/class method API's.Steve Naroff2007-12-191-18/+18
| | | | llvm-svn: 45224
* - Remove getInstanceMethods/getClassMethods API on ObjcInterfaceDecl, ↵Steve Naroff2007-12-141-60/+47
| | | | | | | | | | ObjcProtocolDecl, and ObjcCategoryDecl. These methods are replaced by the respective iterators on each class. - Add getInstanceMethodForSelector to ObjcInterfaceDecl, ObjcProtocolDecl, and ObjcCatgoryDecl. This hook will do a "shallow" lookup. This is a convenience method that reducing some of the iterator usage. - Various changes to convert all clients to the above API's... llvm-svn: 45046
* fix typoChris Lattner2007-12-121-2/+2
| | | | llvm-svn: 44932
* more cleanups changing things like getInstanceVariables to iterators.Chris Lattner2007-12-121-5/+4
| | | | llvm-svn: 44930
* resolve some fixmes and clean up some code by eliminating the get*Vars apis ↵Chris Lattner2007-12-121-21/+11
| | | | | | to some classes and use iterators instead. llvm-svn: 44927
* start cleaning up interfaces for objc bits and pieces by switching to anChris Lattner2007-12-121-17/+13
| | | | | | iterator interface. llvm-svn: 44926
* Implemented when static typing is combined with protocols and use as receiverFariborz Jahanian2007-12-071-0/+42
| | | | | | type. llvm-svn: 44685
* Fix a bug handling typedefs of functions, patch by Nuno Lopes!Chris Lattner2007-12-061-2/+2
| | | | llvm-svn: 44661
* simplify some code, add support for functions without a protoChris Lattner2007-12-011-1/+2
| | | | llvm-svn: 44485
* Add category method definitions incrementally, removing a FIXME (like we do ↵Steve Naroff2007-11-121-20/+27
| | | | | | for class implementations). llvm-svn: 44027
* - Minor cleanup to yesterday's changes to Sema::ObjcActOnStartOfMethodDef();Steve Naroff2007-11-121-0/+17
| | | | | | | | - Add Sema::CurMethodDecl, in preparation for adding ObjcIvarRefExpr. - Add ObjcInterfaceDecl::lookupInstanceVariable(), in prep for adding ivars. - A couple renames in ObjcInterfaceDecl, while I was in the vicinity:-) llvm-svn: 44015
* This is the last 5% of the solution to teaching Sema::ActOnInstanceMessage() ↵Steve Naroff2007-11-111-22/+2
| | | | | | | | | | | | | | | about private methods (r43989). While the diff is large, the idea is very simple. When we parse method definitions (in an @implementation), we need to add them incrementally (rather than wait until the @end). Other details... - Renamed Sema::ActOnAddMethodsToObjcDecl() to Sema::ActOnAtEnd(). The methods are now optional arguments. - Removed Parser::AllImplMethods (a nice cleanup). - Added location info to ObjcImplementationDecl (since we will need it very soon:-) - Modified message.m test to no longer allow the bogus diagnostic. llvm-svn: 43995
* Teach Sema::ActOnInstanceMessage() about private methods. That is, methods ↵Steve Naroff2007-11-111-0/+27
| | | | | | | | | | declared in an implementation (but not listed in the interface). This commit is only 95% of the bug fix. The last piece to this puzzle is to add the method decls to the implementation incrementally (as we encounter them). At the moment, the methods aren't added until we see an @end (which is too late). I will complete this later... llvm-svn: 43989
* Patch for objc2's property ASTs, as well as pretty-priting the ASTs.Fariborz Jahanian2007-11-061-0/+8
| | | | llvm-svn: 43778
* - Add location info to category/protocol AST'sSteve Naroff2007-10-301-2/+4
| | | | | | - Rewrite categories. llvm-svn: 43501
* More support for rewriting ObjC intefaces. Still some edge cases to handle...Steve Naroff2007-10-301-3/+3
| | | | llvm-svn: 43493
* This commit contains lot's of small tweaks to how we pass around and store ↵Steve Naroff2007-10-291-26/+34
| | | | | | SourceLocation's for interfaces/protocols/categories/implementations. llvm-svn: 43475
* - Teach ObjcInterfaceDecl::lookupInstance/ClassMethod to look through protocols.Steve Naroff2007-10-141-2/+26
| | | | | | | - Start looking up methods in the global method pools (for "id"). - Start integrating interface types into the type system. llvm-svn: 42971
* Add category lookup (removing a couple FIXME's).Steve Naroff2007-10-141-2/+28
| | | | | | Changed ObjcInterfaceDecl::ListCategories->CategoryList. llvm-svn: 42968
* This patch implementa objective-c's @compatibilty-alias declaration.Fariborz Jahanian2007-10-111-0/+8
| | | | llvm-svn: 42883
* Rename FileVariable -> FileVar for consistency with its class name, Chris Lattner2007-10-081-9/+9
| | | | | | | | | likewise block and param. Reorder the layout of the Decl kind enum so that the inheritance tree is reflected in the ordering. This allows trivial range comparisons to determine whether something is an instance of some abstract class, making classof faster. llvm-svn: 42772
* move IdentifierTable.h from liblex to libbasic.Chris Lattner2007-10-071-1/+1
| | | | llvm-svn: 42730
* introduce a new NamedDecl class, switch a couple of things over to using it.Chris Lattner2007-10-061-7/+1
| | | | | | | | | | NamedDecl is a Decl that has an IdentifierInfo (for example, ScopedDecl), but not ObjcMethodDecl. Simplify some code in ActOnAddMethodsToObjcDecl, by doing the cast from DeclTy to Decl at the start of the method. llvm-svn: 42710
* More tab removal activity.Fariborz Jahanian2007-10-041-17/+17
| | | | llvm-svn: 42608
* Fixed tabs in couple of sources.Fariborz Jahanian2007-10-041-3/+3
| | | | llvm-svn: 42601
* Unified such names as protocol references, instance methods and class methodsFariborz Jahanian2007-10-021-34/+34
| | | | | | and their accessors in a variety of objective-c classes. llvm-svn: 42555
* - Add ObjcInterfaceDecl::lookupInstanceMethod(), lookupClassMethod().Steve Naroff2007-10-021-0/+32
| | | | | | | | - Add ObjcMessageExpr::getSelector(), getClassName(). - Change Sema::getObjCInterfaceDecl() to simply take an IdentifierInfo (no Scope needed). - Remove FIXME for printing ObjCMessageExpr's. llvm-svn: 42543
* This patch introduces the ObjcCategoryImplDecl class and does the checking ↵Fariborz Jahanian2007-10-021-1/+28
| | | | | | | | related to unimplemented methods in category implementation. llvm-svn: 42531
* Move ObjC decls to DeclObjC.h, a new AST header.Steve Naroff2007-10-011-0/+1
| | | | | | Update clients and add to project file. llvm-svn: 42494
* Took care of clatter's suggestions, dated.Fariborz Jahanian2007-10-011-1/+1
| | | | | | | September 30, 2007 12:36:58 AM PDT and September 30, 2007 12:50:05 AM PDT llvm-svn: 42490
OpenPOWER on IntegriCloud