2012-01-18 3 views
1

Привет, я установил утилиту scan-build для командной строки с http://clang-analyzer.llvm.org/scan-build.html.Как получить статический анализатор scan-build для понимания кода iOS ARC'd

Когда я запускаю это на своем проекте Xcode 4.2, который использует ARC, я получаю множество потенциальных предупреждений о утечке памяти, поскольку анализатор ошибочно думает, что я забыл вручную освободить память.

Поддерживает ли последняя версия (checker-258) ARC правильно? В примечаниях к выпуску говорится, что он должен (http://clang-analyzer.llvm.org/release_notes.html), но это не доказательство, которое я вижу.

Спасибо за любую помощь ..

ответ

1

Я поднял ошибка с Apple, об этом - http://llvm.org/bugs/show_bug.cgi?id=11845. Оказывается, это был известный вопрос - см. http://llvm.org/bugs/show_bug.cgi?id=11348.

Исправление заключается в установке checker-260, см. http://clang-analyzer.llvm.org/release_notes.html плюс эта модификация для ccc-анализатора - http://llvm.org/viewvc/llvm-project?view=rev&revision=149094.

Надеемся, что исправление для ccc-анализатора будет включено в будущую версию scan-build.

0

Есть ли причина, почему вам нужно запустить статический анализатор отдельно, из командной строки?

Если нет, можете сделать это как часть рабочего процесса сборки в Xcode. Просто измените настройки, как показано ниже:

enter image description here

+0

Спасибо за ваш ответ, да, у меня есть Jenkins в качестве нашей непрерывной коробки интеграции, и я хочу использовать плагин Clang scan-build (https://wiki.jenkins-ci.org/display/JENKINS/Clang+Scan -Build + Plugin), чтобы записывать и сообщать об ошибках (он создает приятный визуальный отчет и показывает тенденции). Когда я запускаю его, я получаю проблему, описанную выше. – MandyW