2015-04-23 2 views
0

Как отключить предупреждение XCode Format string is not a string literal в коде ниже?Игнорирование предупреждения от #pragma

- (void)testRemovingOldCode { 
    NSMutableDictionary *oldRequestDict = [[[OldConfigManager sharedManager] feedURLForKey:kStatItemFixtureDetailURLKey] mutableCopy]; 
    NSString *urlString = [NSString stringWithFormat:oldRequestDict[kURLKey], //Warning: "Format string is not a string literal" 
          @"Param1", 
          @"Param2", 
          @"Param3"]; 
} 

Я уже устал (без успеха):

#pragma GCC diagnostic ignored "-Wall" 
#pragma clang diagnostic ignored "-Wall" 
+1

В идеале вы должны использовать только строковые литералы как строки формата. Почему вы пытаетесь заставить замолчать предупреждение? исправить код! – Sulthan

+0

Это не мой код. Я исправляю старый код и делаю модульный тест, чтобы убедиться, что старый и новый код ведут себя одинаково. – Szu

+2

Вы пытались заблокировать его с помощью '-Wformat-nonliteral'? – Sulthan

ответ

1

-Wall не включает в себя все предупреждения, она включает в себя только определенный набор предупреждений. Вы можете быть более успешным с -Weverything, однако всегда лучше всего найти точное предупреждение, которое вы хотите заблокировать. В этом случае -Wformat-nonliteral.

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