Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | On Steve's suggestion, moved handling of use of undeclared method in a message | Fariborz Jahanian | 2007-12-06 | 1 | -4/+4 | |
| | | | | | | to rewriter (my previous patch). llvm-svn: 44665 | |||||
* | Make sure the class methods get attached to the metaclass object. | Steve Naroff | 2007-12-05 | 1 | -2/+2 | |
| | | | | | | Need to query the implementation, not the interface... llvm-svn: 44633 | |||||
* | Changed type-cast of "struct objc_super"'s 2nd initializer to match ↵ | Fariborz Jahanian | 2007-12-05 | 1 | -2/+2 | |
| | | | | | | | | definition of "struct objc_super". llvm-svn: 44616 | |||||
* | Add the definition of objc_super... | Steve Naroff | 2007-12-04 | 1 | -1/+5 | |
| | | | | llvm-svn: 44588 | |||||
* | Type-cast initializers for "struct objc_super" parameter to avoid warning. | Fariborz Jahanian | 2007-12-04 | 1 | -3/+9 | |
| | | | | llvm-svn: 44583 | |||||
* | Don't assert if objc.h not declared when rewriting. | Fariborz Jahanian | 2007-12-04 | 1 | -1/+17 | |
| | | | | llvm-svn: 44580 | |||||
* | Removed a "TODO" comment as objc1 runtime does not need to do the "TODO". | Fariborz Jahanian | 2007-12-04 | 1 | -1/+1 | |
| | | | | llvm-svn: 44577 | |||||
* | Change <Objc/objc.h> to <objc/objc.h> | Fariborz Jahanian | 2007-12-03 | 1 | -1/+1 | |
| | | | | llvm-svn: 44556 | |||||
* | Fixed a bug exposed by referencing an ivar field using component reference ↵ | Fariborz Jahanian | 2007-12-03 | 1 | -1/+3 | |
| | | | | | | syntax. llvm-svn: 44553 | |||||
* | Support for rewriteing of messaging of methods which return float. | Fariborz Jahanian | 2007-12-03 | 1 | -0/+27 | |
| | | | | llvm-svn: 44548 | |||||
* | Added support for messagings which return a structure-value. | Fariborz Jahanian | 2007-12-03 | 1 | -9/+122 | |
| | | | | | | (Also fixed a regression caused by recent changes to synthesis of structs). llvm-svn: 44540 | |||||
* | fix a crash when the rewriter would scan off the beginning of the file. | Chris Lattner | 2007-12-02 | 1 | -3/+11 | |
| | | | | llvm-svn: 44499 | |||||
* | add support for custom client-specific diagnostics. As a testcase, make the | Chris Lattner | 2007-12-02 | 1 | -0/+5 | |
| | | | | | | | | | | | | rewriter emit this error if it fails to rewrite an @encode: t.m:17:9: error: rewriter could not replace sub-expression due to macros c = ENC(char *)[2] + 4; ^~~~~~~~~~~ ... where ENC is: #define ENC @encode llvm-svn: 44498 | |||||
* | start partitioning the diagnostics into two classes: those | Chris Lattner | 2007-11-30 | 1 | -0/+2 | |
| | | | | | | | | that are builtin and those that are aren't. This is a bunch of API refactoring that will make this possible, but there is no functionality change yet. llvm-svn: 44473 | |||||
* | pass diagnostics into the rewrite test client. | Chris Lattner | 2007-11-30 | 1 | -2/+10 | |
| | | | | llvm-svn: 44468 | |||||
* | Fixed a rewrite bug in class synthesis (which I first thought was a rewrite ↵ | Fariborz Jahanian | 2007-11-26 | 1 | -4/+6 | |
| | | | | | | API bug). llvm-svn: 44335 | |||||
* | Patch to fix a regression caused by recent rewrite changes. | Fariborz Jahanian | 2007-11-26 | 1 | -7/+13 | |
| | | | | | | A potential API bug in ReplaceText pending (A FIXME is added). llvm-svn: 44333 | |||||
* | No need to forward declare definition of objc_super... | Steve Naroff | 2007-11-15 | 1 | -2/+1 | |
| | | | | llvm-svn: 44173 | |||||
* | Implement support for variadic methods (work in progress). | Steve Naroff | 2007-11-15 | 1 | -2/+2 | |
| | | | | llvm-svn: 44171 | |||||
* | Extend RewriteTest::RewriteObjCIvarRefExpr() to cope with static typing ↵ | Steve Naroff | 2007-11-15 | 1 | -2/+20 | |
| | | | | | | (when using -> on a type which corresponds to the implementation type). llvm-svn: 44170 | |||||
* | Tweak funky cast to accommodate messaging 'super'. This removes any spurious ↵ | Steve Naroff | 2007-11-15 | 1 | -1/+4 | |
| | | | | | | warnings. llvm-svn: 44169 | |||||
* | Rewrite for messaging 'super'. | Steve Naroff | 2007-11-15 | 1 | -7/+140 | |
| | | | | | | The code gen. results in some spurious warnings...a cast is forthcoming. llvm-svn: 44168 | |||||
* | - Implement ivar rewrite (patch by Fariborz). | Steve Naroff | 2007-11-15 | 1 | -10/+22 | |
| | | | | | | - RewriteMessageExpr()...make implicit casts explicit with synthesizing call (removing warnings when calling objc_msgSend()). llvm-svn: 44156 | |||||
* | Refinement to previous commit. Always cast the first argument to "id"...no ↵ | Steve Naroff | 2007-11-15 | 1 | -6/+1 | |
| | | | | | | need to special case self. llvm-svn: 44149 | |||||
* | Cast implicit "self" argument to "id". This removes all warnings associated ↵ | Steve Naroff | 2007-11-14 | 1 | -3/+20 | |
| | | | | | | with implicit references to self. It doesn't yet deal withexplicit references to self... llvm-svn: 44148 | |||||
* | Always generate a typedef for @class. The typedef removal logic that I'm ↵ | Steve Naroff | 2007-11-14 | 1 | -6/+1 | |
| | | | | | | removing only made sense when we were operating on preprocess files without typedef guards. Now that we have guards, it is incorrect to ever remove one (since it may increase the likelihood that the rewritten header can't be included stand alone). llvm-svn: 44145 | |||||
* | Fix a rewriter bug that steve noticed. Don't skip arbitrary things | Chris Lattner | 2007-11-14 | 1 | -1/+4 | |
| | | | | | | between an @ and a p, just skip whitespace. llvm-svn: 44144 | |||||
* | Patch to comment out use of protocol qualifiers when rewriting ivars. | Fariborz Jahanian | 2007-11-14 | 1 | -11/+16 | |
| | | | | llvm-svn: 44142 | |||||
* | Fairly major surgery to RewriteTest::SynthesizeObjcInternalStruct(). | Steve Naroff | 2007-11-14 | 1 | -49/+49 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows us to handle funky stuff like... #if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 @interface NSLayoutManager : NSObject <NSCoding, NSGlyphStorage> { #else /* MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 */ @interface NSLayoutManager : NSObject <NSCoding> { #endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 */ ...which now rewrites to... #if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 #ifndef _REWRITER_typedef_NSLayoutManager #define _REWRITER_typedef_NSLayoutManager typedef struct objc_object NSLayoutManager; #endif struct NSLayoutManager { struct NSObject _NSObject; #else /* MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 */ // @interface NSLayoutManager : NSObject <NSCoding> { #endif /* MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 */ llvm-svn: 44129 | |||||
* | Removed unused variabel. | Fariborz Jahanian | 2007-11-14 | 1 | -1/+0 | |
| | | | | llvm-svn: 44123 | |||||
* | Fix yesterday's regression with rewriting @optional/@required. | Steve Naroff | 2007-11-14 | 1 | -6/+3 | |
| | | | | llvm-svn: 44119 | |||||
* | Rewrite methods that span multiple lines. | Steve Naroff | 2007-11-14 | 1 | -4/+8 | |
| | | | | llvm-svn: 44118 | |||||
* | Comment out recent regression r44096. | Steve Naroff | 2007-11-14 | 1 | -2/+4 | |
| | | | | llvm-svn: 44098 | |||||
* | Rewrite @optional/@required directives used inside protocol definitions. | Fariborz Jahanian | 2007-11-14 | 1 | -1/+28 | |
| | | | | llvm-svn: 44096 | |||||
* | Rewrite of forward protocol declaration. | Fariborz Jahanian | 2007-11-14 | 1 | -0/+10 | |
| | | | | llvm-svn: 44095 | |||||
* | Rewrite method definition bodies. Also renamed a method to distinguish ↵ | Steve Naroff | 2007-11-13 | 1 | -15/+19 | |
| | | | | | | between method declarations and definitions. llvm-svn: 44080 | |||||
* | Fixed a rewrite of metadata bug when category implementation has no matching ↵ | Fariborz Jahanian | 2007-11-13 | 1 | -8/+8 | |
| | | | | | | interface. llvm-svn: 44072 | |||||
* | Populate metadata with adrress of method code. | Fariborz Jahanian | 2007-11-13 | 1 | -11/+21 | |
| | | | | llvm-svn: 44066 | |||||
* | Rewrite of method definitions in categories. | Fariborz Jahanian | 2007-11-13 | 1 | -10/+33 | |
| | | | | llvm-svn: 44062 | |||||
* | Order of methods are OK and generated .c file can be compiled. | Fariborz Jahanian | 2007-11-13 | 1 | -7/+19 | |
| | | | | llvm-svn: 44060 | |||||
* | First patch in rewrie of method definitions. This is work in progress. | Fariborz Jahanian | 2007-11-13 | 1 | -0/+98 | |
| | | | | llvm-svn: 44055 | |||||
* | - Minor cleanup to yesterday's changes to Sema::ObjcActOnStartOfMethodDef(); | Steve Naroff | 2007-11-12 | 1 | -3/+3 | |
| | | | | | | | | - 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 Naroff | 2007-11-11 | 1 | -2/+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 | |||||
* | Rewrite global variable initializers. | Steve Naroff | 2007-11-09 | 1 | -4/+8 | |
| | | | | llvm-svn: 43947 | |||||
* | - add typedef guards. | Steve Naroff | 2007-11-09 | 1 | -7/+20 | |
| | | | | | | | - tweak scanForProtocolRefs heuristic. - disable RewriteInclude() for now. llvm-svn: 43942 | |||||
* | Rewrite RewriteObjCStringLiteral(). This version is simpler (and unlike the ↵ | Steve Naroff | 2007-11-08 | 1 | -1/+34 | |
| | | | | | | previous one, works:-) llvm-svn: 43890 | |||||
* | use insert instead of replacing 0 bytes with text :) | Chris Lattner | 2007-11-08 | 1 | -10/+10 | |
| | | | | llvm-svn: 43882 | |||||
* | use std::copy instead of memcpy for abstraction. | Chris Lattner | 2007-11-08 | 1 | -1/+3 | |
| | | | | | | | Disable rewrite-tabs. This speeds up processing of the commentified huge crazy testcase steve gave me from 20s to 6.6s in a release build. llvm-svn: 43880 | |||||
* | Finishing touches on code generation for @try and friends. | Steve Naroff | 2007-11-07 | 1 | -6/+13 | |
| | | | | | | | | - declare functions we use. - cast arguments to objc_exception_match(). - don't take the & of _stack.buf. llvm-svn: 43831 | |||||
* | Emit objective-c's meta-data at the end of rewriting to stdout. | Fariborz Jahanian | 2007-11-07 | 1 | -3/+2 | |
| | | | | llvm-svn: 43830 |