In gcc/testsuite/: 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com> Iain Sandoe <iains@gcc.gnu.org>

In gcc/testsuite/:
2011-06-07  Nicola Pero  <nicola.pero@meta-innovation.com>
	    Iain Sandoe  <iains@gcc.gnu.org>

	* objc-obj-c++-shared/runtime.h (protocol_getMethodDescription):
	Added code to deal with the case when [Protocol
	-descriptionForInstanceMethod:] or [Protocol
	-descriptionForClassMethod:] returns NULL.

2011-06-07  Nicola Pero  <nicola.pero@meta-innovation.com>
	    Iain Sandoe  <iains@gcc.gnu.org>

	* objc-obj-c++-shared/TestsuiteObject.h ([-free]): Return 'id'.
	* objc-obj-c++-shared/TestsuiteObject.m ([-free]): Return 'id'.
	Added cast.

Co-Authored-By: Iain Sandoe <iains@gcc.gnu.org>

From-SVN: r174766
This commit is contained in:
Nicola Pero 2011-06-07 20:47:12 +00:00 committed by Nicola Pero
parent 80e4b9e501
commit ac07a61dda
4 changed files with 31 additions and 9 deletions

View File

@ -1,3 +1,18 @@
2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
Iain Sandoe <iains@gcc.gnu.org>
* objc-obj-c++-shared/runtime.h (protocol_getMethodDescription):
Added code to deal with the case when [Protocol
-descriptionForInstanceMethod:] or [Protocol
-descriptionForClassMethod:] returns NULL.
2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
Iain Sandoe <iains@gcc.gnu.org>
* objc-obj-c++-shared/TestsuiteObject.h ([-free]): Return 'id'.
* objc-obj-c++-shared/TestsuiteObject.m ([-free]): Return 'id'.
Added cast.
2011-06-07 Xinliang David Li <davidxl@google.com>
* testsuite/gcc.dg/inline_2.c: New test.

View File

@ -35,7 +35,7 @@ along with GCC; see the file COPYING3. If not see
+ (id) new;
+ (id) alloc;
- (id) init;
- (void) free;
- (id) free;
/* Auxiliary methods. */
+ (Class) class;

View File

@ -41,9 +41,14 @@ along with GCC; see the file COPYING3. If not see
{
return self;
}
- (void) free
/* We return 'id' to have the same signature as [Object -free] in
older runtimes and avoid warnings about conflicting signatures. */
- (id) free
{
object_dispose (self);
/* Cast 'self' to 'id' because the NeXT runtime in darwin8 (Apple
Mac OS X 10.4) declares object_dispose to take an "Object *"
argument. */
return object_dispose ((id)self);
}
+ (Class) class
{

View File

@ -93,14 +93,16 @@ struct objc_method_description protocol_getMethodDescription (Protocol *protocol
struct objc_method_description result;
if (instanceMethod)
{
tmp = [protocol descriptionForInstanceMethod: selector];
result = *tmp;
}
tmp = [protocol descriptionForInstanceMethod: selector];
else
tmp = [protocol descriptionForClassMethod: selector];
if (tmp)
result = *tmp;
else
{
tmp = [protocol descriptionForClassMethod: selector];
result = *tmp;
result.name = (SEL)0;
result.types = (char *)0;
}
return result;