Это код
Dest.h
#import <UIKit/UIKit.h>
#import <CoreGraphics/CGPDFArray.h>
@class Model;
// snip
@interface Dest : NSObject
{
CGPDFArrayRef destArray;
DestKind kind;
}
+ (id)destWithObject:(CGPDFObjectRef)obj inModel:(Model*)model;
- (id)initWithArray:(CGPDFArrayRef)array;
Dest.m
@implementation Dest
+ (id)destWithObject:(CGPDFObjectRef)obj inModel:(PDFModel*)model
{
CGPDFArrayRef array = NULL;
Dest* dest = nil;
// stuff to create array
if (array)
{
dest = [[[Dest alloc] initWithArray:array] autorelease];
<path>/Dest.m:63: warning: passing argument 1 of 'initWithArray:' from incompatible pointer type
}
return dest;
}
Очевидно, что компилятор считает, что массив несовместим с initWithArray:
, объявленным в Dest.h
. Но, насколько я понимаю, тип совершенно правильный. Я даже скопировал объявление из Dest.h
и вставил его в Dest.m
. initWithArray:
компилируется нормально. Добавление / удаление файла заголовка CGPDFArray.h
в Dest.h
не имеет никакого значения, компилятор не считает, что это int в Dest.h
.