У меня есть typedef в файле A.h, и я импортирую этот файл A.h в B.h, который использует тот же typedef.
В течение долгого времени все работало нормально, но теперь он ломается, жалуясь, что не распознает typedef и выдает ошибку «Ожидается тип» в xcode, даже если xcode выделяет typedef во втором файле, что означает, что он знает, что они определены еще куда.
если я вручную переопределю этот typedef, ошибка исчезнет. но я получаю предупреждение о том, что я переопределяю typedef и что это функция C11.
Я попытался удалить производные данные, но ошибка остается. Похоже, xcode пытается найти typedef перед вставкой файлов импорта. Любая подсказка? Я использую xcode 4.6
//WebService.h
#import <Foundation/Foundation.h>
#import "AppDelegate.h"
@interface WebService : NSObject
typedef void(^loginUserWithUserNameandPaswordCompletion)(NSDictionary *, NSError*);
+(void)createUserWithName:(NSString*)name
andEmail:(NSString*)email
andPassword:(NSString*)password
onCompletion:(loginUserWithUserNameandPaswordCompletion) complete;
@end
//DataCenter.h
#import <Foundation/Foundation.h>
#import "WebService.h"
#import "AppDelegate.h"
typedef void(^loginUserWithUserNameandPaswordCompletion)(NSDictionary *, NSError*);
@interface DataCenter : NSObject
+(void) logInUserWithEmail:(NSString*) email
andPassword:(NSString*)password
onCompletion:(loginUserWithUserNameandPaswordCompletion)complete;
@end