Я пытаюсь использовать Uncrustify в своем проекте, но у меня возникают некоторые проблемы с изменениями интервалов, которые он вносит, когда макрос используется в качестве получателя сообщения Objective-C. Например, учитывая следующий вызов макроса и метода, я ожидаю, что интервал останется точно таким же, как есть.
#define NilOrNotNSNull(val) ({id __val = (val); (__val == [NSNull null]) ? nil : __val;})
title_ = [NilOrNotNSNull([dict objectForKey:@"post_title"]) copy];
Однако это результат.
#define NilOrNotNSNull(val) ({id __val = (val); (__val == [NSNull null]) ? nil : __val;})
title_ = [NilOrNotNSNull ([dict objectForKey:@"post_title"])copy];
Похоже, что Uncrustify не распознает, что текст в круглых скобках является аргументом для макроса, но тогда я не совсем уверен, что, черт возьми, он думает. Мне это кажется ошибкой Uncrustify, но это может быть проблема с моей конфигурацией, поэтому я решил спросить здесь, а также зарегистрировать проблему на GitHub. Вот конфигурация, которую я использую: https://gist.github.com/812314
Если бы кто-нибудь мог предложить некоторое понимание, я был бы признателен.