summaryrefslogtreecommitdiffstats
path: root/clang/Parse/ParseObjc.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Fixes/tweaks that prevent "defaults-i.m" from compiling.Steve Naroff2007-09-161-3/+6
| | | | | | | - Allow classnames as the receiver (removing a FIXME from ParseObjCMessageExpression). - Added a FIXME to ParseObjCMessageExpression()...we need to return a message expr AST node! llvm-svn: 42001
* Start converting Action methods from Parse-prefix to ActOn-prefix.Steve Naroff2007-09-151-3/+3
| | | | | | The previous naming scheme was confusing, since it resulted in both the Parser and Action modules having methods with the same name. In addition, the Action module never does any parsing... llvm-svn: 41986
* Rename Action::ParseRecordBody() to ProcessFieldDecls(), and add a ↵Steve Naroff2007-09-141-4/+3
| | | | | | | | | | visibility argument. Remove Action::ObjcAddVisibilityToIvars(). No need for an extra API when it is trivial to add this info to the previous hook. In general, I want to start migrating away from having Actions prefixed with "Parse" (which is confusing, since the Action API doesn't do any parsing, per se). llvm-svn: 41973
* Patch to store ivars into interface class object.Fariborz Jahanian2007-09-141-1/+1
| | | | llvm-svn: 41961
* Semantic analysis for objective-c ivars.Fariborz Jahanian2007-09-141-0/+2
| | | | llvm-svn: 41954
* Patch for collecting ivars before running action on them.Fariborz Jahanian2007-09-131-3/+11
| | | | llvm-svn: 41932
* Patch for building method declaration nodes. Also fixed a segfault in ↵Fariborz Jahanian2007-09-121-1/+1
| | | | | | | | cocoa.m due to use of @property. llvm-svn: 41880
* Some small tweaks to the recent Objc support...Steve Naroff2007-09-101-2/+2
| | | | llvm-svn: 41803
* Early patch to collect objective-c methods inserts them inFariborz Jahanian2007-09-101-21/+27
| | | | | | class object. llvm-svn: 41801
* The goal of this commit is to get just enough Sema support to recognize ↵Steve Naroff2007-09-061-56/+42
| | | | | | | | | | | Objective-C classes as types. That said, the AST nodes ObjcInterfaceDecl, ObjcInterfaceType, and ObjcClassDecl are *very* preliminary. The good news is we no longer need -parse-noop (aka MinimalActions) to parse cocoa.m. llvm-svn: 41752
* Start implementing Actions interface for ObjC classes, instance variables, ↵Steve Naroff2007-09-051-37/+78
| | | | | | | | and methods. Lot's of small changes to the parser. llvm-svn: 41732
* Patch for parsing objective-c style method calls.Fariborz Jahanian2007-09-051-1/+41
| | | | llvm-svn: 41731
* 1. Fix parsing of method prototype involving c-style argument declarations.Fariborz Jahanian2007-09-051-4/+39
| | | | | | | | 2. Fixes all allowable key-words used as selectors. 3. Template to do the messaging parse. 4. A test case for all allowable selector names. llvm-svn: 41723
* Fixed a typo pointed out by Anders Calrsson.Fariborz Jahanian2007-09-041-1/+1
| | | | llvm-svn: 41716
* Patch to parse objective-c's @compatibility_alias directive.Fariborz Jahanian2007-09-041-3/+21
| | | | llvm-svn: 41709
* Patch to parse @implementation prologue, method definitions,Fariborz Jahanian2007-09-011-14/+160
| | | | | | objc2's @synthesize and @dynamic. llvm-svn: 41667
* Author: F. JahanianFariborz Jahanian2007-08-311-3/+103
| | | | | | | | | | | | | Log: Implement parsing of objective-c's new @property declaration. Modified: include/clang/Basic/DiagnosticKinds.def include/clang/Parse/Parser.h Parse/ParseObjc.cpp Parse/Parser.cpp llvm-svn: 41644
* cleanup context-sensitive objc keyword recognition. Patch by Fariborz Jahanian.Chris Lattner2007-08-291-5/+3
| | | | llvm-svn: 41583
* - Cleanup "hack" comment and fix typos.Steve Naroff2007-08-231-4/+7
| | | | | | - Use getLang().ObjC2 when appropriate. llvm-svn: 41333
* Add helper functions Token::isObjCAtKeyword() and Token::getObjCKeywordID().Steve Naroff2007-08-231-18/+10
| | | | | | Convert all clients to the new cleaner, more robust API. llvm-svn: 41330
* As suggested by Chris, use MatchRHSPunctuation instead of manually looking ↵Anders Carlsson2007-08-231-11/+3
| | | | | | for a right parenthesis when parsing @encode() and @protocol(). llvm-svn: 41321
* Parse ObjC @protocol expressions.Anders Carlsson2007-08-231-1/+40
| | | | llvm-svn: 41320
* With this commit, we now successfully parse "Cocoa.h"!Steve Naroff2007-08-221-3/+17
| | | | llvm-svn: 41303
* Add support for parsing protocols.Steve Naroff2007-08-221-18/+84
| | | | | | Now we can parse quite a bit of "Foundation.h" (a couple bugs remain). llvm-svn: 41300
* Finish up method prototype parsing.Steve Naroff2007-08-221-13/+60
| | | | | | Next step...starting installing class names into the type namespace (so we can start parsing Cocoa headers). llvm-svn: 41283
* Add support for parsing method prototypes (and other stuff required by ↵Steve Naroff2007-08-221-22/+160
| | | | | | | | | | @interface). Still need to finish Parser::ParseObjCMethodDecl(). Before I do, I need to do a minor refactoring of ParseDeclarationOrFunctionDefinition(), to disallow function definitions. At the moment, @inteface allows function defs (which is incorrect). llvm-svn: 41275
* Parse @encode expressions.Anders Carlsson2007-08-221-0/+29
| | | | llvm-svn: 41273
* Implement parsing for objc instance variables.Steve Naroff2007-08-211-3/+54
| | | | | | Next step, method... llvm-svn: 41251
* Implement parsing and code generation of Objective-C string literals.Anders Carlsson2007-08-211-0/+24
| | | | llvm-svn: 41238
* Start parsing ObjC classes/categories!Steve Naroff2007-08-201-12/+219
| | | | | | | Next step, refactor Parser::ParseStructUnionBody() so that struct declarations can be shared with Objective-C (for declaring instance variables). llvm-svn: 41200
* Finally bite the bullet and make the major change: split the clang namespaceChris Lattner2007-06-151-2/+1
| | | | | | | | | | | | | out of the llvm namespace. This makes the clang namespace be a sibling of llvm instead of being a child. The good thing about this is that it makes many things unambiguous. The bad things is that many things in the llvm namespace (notably data structures like smallvector) now require an llvm:: qualifier. IMO, libsystem and libsupport should be split out of llvm into their own namespace in the future, which will fix this issue. llvm-svn: 39659
* rename ParsedClassDeclaration -> ParsedObjcClassDeclaration.Chris Lattner2006-11-191-1/+2
| | | | llvm-svn: 39183
* remove diag helper that implicitly reports the diagnostic at the currentChris Lattner2006-11-101-1/+1
| | | | | | token: it is better for the code to be explicit. llvm-svn: 39158
* rename these methods so that they read correctly.Chris Lattner2006-11-081-15/+15
| | | | llvm-svn: 39148
* Move objc productions to their own .cpp file.Chris Lattner2006-11-051-0/+105
llvm-svn: 39124
OpenPOWER on IntegriCloud