hal@eecs.cs.pdx.edu (Aaron Harsh) (05/14/91)
Is there some way to let the compiler know that a method will be declared in another category? On a class Foo defined like: // Foo.h #import <objc/Object.h> @interface Foo : Object { } - init; @end // Foo.m #import "Foo.h" @implementation Foo : Object - init { [self bar]; return self; } @end // Foo2.m #import "Foo.h" @interface Foo (Foo2) - bar; @end @implementation Foo (Foo2) - bar { puts("BAR"); } @end [[Foo alloc] init] gives the correct output, but the compiler gives the warning: "Foo.m: warning `Foo' does not respond to `bar'". Adding '-bar' to the implementation declaration in Foo.h makes the compiler complain about an incomplete declaration. Does anyone know a way to split up an object declaration without having it complain? Aaron Harsh hal@eecs.cs.pdx.edu