summaryrefslogtreecommitdiffstats
path: root/clang/Driver/RewriteTest.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* On Steve's suggestion, moved handling of use of undeclared method in a messageFariborz Jahanian2007-12-061-4/+4
| | | | | | to rewriter (my previous patch). llvm-svn: 44665
* Make sure the class methods get attached to the metaclass object.Steve Naroff2007-12-051-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 Jahanian2007-12-051-2/+2
| | | | | | | | definition of "struct objc_super". llvm-svn: 44616
* Add the definition of objc_super...Steve Naroff2007-12-041-1/+5
| | | | llvm-svn: 44588
* Type-cast initializers for "struct objc_super" parameter to avoid warning.Fariborz Jahanian2007-12-041-3/+9
| | | | llvm-svn: 44583
* Don't assert if objc.h not declared when rewriting.Fariborz Jahanian2007-12-041-1/+17
| | | | llvm-svn: 44580
* Removed a "TODO" comment as objc1 runtime does not need to do the "TODO".Fariborz Jahanian2007-12-041-1/+1
| | | | llvm-svn: 44577
* Change <Objc/objc.h> to <objc/objc.h>Fariborz Jahanian2007-12-031-1/+1
| | | | llvm-svn: 44556
* Fixed a bug exposed by referencing an ivar field using component reference ↵Fariborz Jahanian2007-12-031-1/+3
| | | | | | syntax. llvm-svn: 44553
* Support for rewriteing of messaging of methods which return float.Fariborz Jahanian2007-12-031-0/+27
| | | | llvm-svn: 44548
* Added support for messagings which return a structure-value.Fariborz Jahanian2007-12-031-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 Lattner2007-12-021-3/+11
| | | | llvm-svn: 44499
* add support for custom client-specific diagnostics. As a testcase, make the Chris Lattner2007-12-021-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: thoseChris Lattner2007-11-301-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 Lattner2007-11-301-2/+10
| | | | llvm-svn: 44468
* Fixed a rewrite bug in class synthesis (which I first thought was a rewrite ↵Fariborz Jahanian2007-11-261-4/+6
| | | | | | API bug). llvm-svn: 44335
* Patch to fix a regression caused by recent rewrite changes.Fariborz Jahanian2007-11-261-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 Naroff2007-11-151-2/+1
| | | | llvm-svn: 44173
* Implement support for variadic methods (work in progress).Steve Naroff2007-11-151-2/+2
| | | | llvm-svn: 44171
* Extend RewriteTest::RewriteObjCIvarRefExpr() to cope with static typing ↵Steve Naroff2007-11-151-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 Naroff2007-11-151-1/+4
| | | | | | warnings. llvm-svn: 44169
* Rewrite for messaging 'super'.Steve Naroff2007-11-151-7/+140
| | | | | | The code gen. results in some spurious warnings...a cast is forthcoming. llvm-svn: 44168
* - Implement ivar rewrite (patch by Fariborz).Steve Naroff2007-11-151-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 Naroff2007-11-151-6/+1
| | | | | | need to special case self. llvm-svn: 44149
* Cast implicit "self" argument to "id". This removes all warnings associated ↵Steve Naroff2007-11-141-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 Naroff2007-11-141-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 thingsChris Lattner2007-11-141-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 Jahanian2007-11-141-11/+16
| | | | llvm-svn: 44142
* Fairly major surgery to RewriteTest::SynthesizeObjcInternalStruct().Steve Naroff2007-11-141-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 Jahanian2007-11-141-1/+0
| | | | llvm-svn: 44123
* Fix yesterday's regression with rewriting @optional/@required.Steve Naroff2007-11-141-6/+3
| | | | llvm-svn: 44119
* Rewrite methods that span multiple lines.Steve Naroff2007-11-141-4/+8
| | | | llvm-svn: 44118
* Comment out recent regression r44096.Steve Naroff2007-11-141-2/+4
| | | | llvm-svn: 44098
* Rewrite @optional/@required directives used inside protocol definitions.Fariborz Jahanian2007-11-141-1/+28
| | | | llvm-svn: 44096
* Rewrite of forward protocol declaration.Fariborz Jahanian2007-11-141-0/+10
| | | | llvm-svn: 44095
* Rewrite method definition bodies. Also renamed a method to distinguish ↵Steve Naroff2007-11-131-15/+19
| | | | | | between method declarations and definitions. llvm-svn: 44080
* Fixed a rewrite of metadata bug when category implementation has no matching ↵Fariborz Jahanian2007-11-131-8/+8
| | | | | | interface. llvm-svn: 44072
* Populate metadata with adrress of method code.Fariborz Jahanian2007-11-131-11/+21
| | | | llvm-svn: 44066
* Rewrite of method definitions in categories.Fariborz Jahanian2007-11-131-10/+33
| | | | llvm-svn: 44062
* Order of methods are OK and generated .c file can be compiled.Fariborz Jahanian2007-11-131-7/+19
| | | | llvm-svn: 44060
* First patch in rewrie of method definitions. This is work in progress.Fariborz Jahanian2007-11-131-0/+98
| | | | llvm-svn: 44055
* - Minor cleanup to yesterday's changes to Sema::ObjcActOnStartOfMethodDef();Steve Naroff2007-11-121-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 Naroff2007-11-111-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 Naroff2007-11-091-4/+8
| | | | llvm-svn: 43947
* - add typedef guards.Steve Naroff2007-11-091-7/+20
| | | | | | | - tweak scanForProtocolRefs heuristic. - disable RewriteInclude() for now. llvm-svn: 43942
* Rewrite RewriteObjCStringLiteral(). This version is simpler (and unlike the ↵Steve Naroff2007-11-081-1/+34
| | | | | | previous one, works:-) llvm-svn: 43890
* use insert instead of replacing 0 bytes with text :)Chris Lattner2007-11-081-10/+10
| | | | llvm-svn: 43882
* use std::copy instead of memcpy for abstraction.Chris Lattner2007-11-081-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 Naroff2007-11-071-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 Jahanian2007-11-071-3/+2
| | | | llvm-svn: 43830
OpenPOWER on IntegriCloud