2010-07-22 3 views
0

XCode дает мне предупреждение, что я не могу понять, почему.Предупреждение XCode: аргумент 3 отбрасывает квалификаторы от целевого типа указателя

@interface SFHFKeychainUtils : NSObject { 

} 

+ (BOOL) storeUsername: (NSString *) username andPassword: (NSString *) password forServiceName: (NSString *) serviceName updateExisting: (BOOL) updateExisting error: (NSError **) error; 
@end 

В другом классе я называю storeUsername: andPassword: forServiceName: updateExisting: ошибка :, см:

- (void)armazenarLogin:(NSString *)login withPassword:(NSString *)password { 
    if (login != nil && password != nil) { 
     NSError *error = nil; 
     [SFHFKeychainUtils storeUsername:login andPassword:password forServiceName:kKeychainServiceName updateExisting:YES error:&error]; // warning here 
    } 
} 

Это предупреждение:

Passing argument 3 of 'storeUsername:andPassword:forServiceName:updateExisting:error:' discards qualifiers from pointer target

Но я пропусканием указатель на NSError. Как я могу решить это предупреждение?

ответ

1

Аргумент 3 - это сервисное имя, не так ли? Проверьте его декларацию. Держу пари, что это const.

+0

Спасибо. Вы правы. KKeychainServiceName объявлен как const. –

Смежные вопросы