blob: b266660ec977cc39e837818f14c8b745030440d5 [file] [log] [blame]
/* APPLE LOCAL file radar 4623423 */
/* Test type 'Class' is recognized as type of a for-each's selector. */
#include <Foundation/Foundation.h>
/* { dg-options "-mmacosx-version-min=10.5" { target powerpc*-*-darwin* i?86*-*-darwin* } } */
/* { dg-do compile } */
@interface PBXLSDebuggerAdaptor : NSObject {
};
@end
@interface Foo : NSObject {
};
+ (NSString*) _name;
+ (NSMutableDictionary*) _adaptorClassesDictionary;
+ (NSMutableSet*) _debuggerAdaptorClassesSet;
+ (void) registerAdaptorClasses:(NSArray *)adaptorClasses;
+ (void) registerAdaptorClasses1:(NSArray *)adaptorClasses;
@end
@implementation Foo
+ (NSString*) _name { return nil;}
+ (NSMutableDictionary*) _adaptorClassesDictionary { return nil;}
+ (NSMutableSet*) _debuggerAdaptorClassesSet { return nil;}
+ (void) registerAdaptorClasses:(NSArray *)adaptorClasses {
int i;
for (i=0;i<[adaptorClasses count];i++) {
Class adaptorClass = [adaptorClasses objectAtIndex: i];
[[self _adaptorClassesDictionary] setObject:adaptorClass forKey:[adaptorClass _name]];
if ([adaptorClass isSubclassOfClass:[PBXLSDebuggerAdaptor class]]) {
[[self _debuggerAdaptorClassesSet] addObject:adaptorClass];
}
}
}
+ (void) registerAdaptorClasses1:(NSArray *)adaptorClasses
{
for (Class adaptorClass in adaptorClasses) {
[[self _adaptorClassesDictionary] setObject:adaptorClass forKey:[adaptorClass _name]];
if ([adaptorClass isSubclassOfClass:[PBXLSDebuggerAdaptor class]]) {
[[self _debuggerAdaptorClassesSet] addObject:adaptorClass];
}
}
}
@end