Вопросы по теме 'clang-static-analyzer'

Почему команда Build and Analyze не находит очевидных ошибок управления памятью?
По какой-то причине Clang Static Analyzer в моем Xcode ни на что не жалуется. Я сделал большие ошибки управления памятью, чтобы попробовать его (выделение и отсутствие выпуска), но он никогда их не находит и не жалуется на них. Даже после очистки...
182 просмотров
schedule 13.03.2022

Core Data выдает предупреждения анализатора
Я делаю последние доработки приложения и избавляюсь от всех предупреждений компилятора / анализатора. У меня есть несколько методов класса, которые обертывают доступ моих приложений к сущностям Core Data. Это «провоцирует» анализатор. +...
245 просмотров

Если я использую g++ в качестве компилятора, как мне просканировать файл c++ с помощью статического анализатора clang?
Я использую g++ для компиляции моего проекта C++. Когда я пытаюсь использовать статический анализатор clang ( scan-build ), чтобы проверить мой код, я получаю сообщение об ошибке: >> scan-build g++ main.cpp could not find clang line...
2402 просмотров
schedule 17.08.2023

Нулевой указатель в CFRelease (сообщается статическим анилизером)
Я получил этот код: - (void)saveImageWithData:(NSData*)jpeg andDictionary:(NSDictionary*)dicRef andName:(NSString*)name { self.capturedImageName = name; self.dict = dicRef; NSLog(@"%@",dicRef); CGImageSourceRef source ;...
1464 просмотров
schedule 25.02.2022

отключить предупреждение компилятора об освобождении объекта CGMutablePathRef
Я включил статический анализатор, но он сообщает мне, что в конце этого пути выполнения этот объект не освобождается, что, возможно, вызывает утечку памяти. Однако я передаю эту ссылку на созданный объект другому классу, который его выпустит. Мне...
448 просмотров

Реализация правил Vera++
Пожалуйста, пройдите, если кто-то знает о Vera++ или Static Analyzer. Как реализовать сложную машину проверки правил C++ в качестве статического анализатора? Я хочу реализовать сложные правила, такие как виртуальная функция в базовых классах,...
4250 просмотров

ARC: предупреждения анализатора с кодом Objective-C с использованием базовой основы
Использование анализатора на некоторых Objective-C | Код Cocoa/Core Foundation, у меня есть несколько ошибок, которые я не могу исправить, потому что я их не понимаю. Ошибка №1 : в заголовке класса Objective-C я объявляю это свойство....
462 просмотров

Условное выделение NSArray без получения ошибки от статического анализатора?
ДЛЯ СЛЕДУЮЩЕГО КОДА NSArray *colors = [[NSArray alloc]init]; if ([CONDITION]) { colors = @[ [UIColor colorWithRed:240/255.f green:159/255.f blue:254/255.f alpha:1], [UIColor colorWithRed:255/255.f green:137/255.f...
280 просмотров

Как получить имя функции, используя FunctionDecl *D в clang
В одном из моих средств проверки я использую класс FunctionDecl для получения объявления функции. Теперь я хочу получить имя функции, для которой я вхожу в метод checkASTDecl. Как мы знаем, в checkASTDecl() мы получаем указатель класса FunctionDecl....
3479 просмотров
schedule 17.11.2023

Статический анализатор clang сбивается с толку, выталкивая фронт из списка unique_ptrs?
Следующий код C++11 является минимальным примером того, что, по моему мнению, вызывает ложное срабатывание в clang: #include <iostream> #include <list> #include <memory> class ElementType {}; int main(int argc, const char *...
628 просмотров

Метод копирования CRTP предупреждает о потенциальной утечке памяти
У меня есть иерархия объектов, и мне нужно иметь возможность клонировать объекты из базового класса. Я следовал типичному шаблону CRTP, за исключением того, что я также хочу иметь возможность возвращать дочерний класс, если копия вызывается...
377 просмотров
schedule 08.06.2023

BinaryOperator не работает, когда дело доходит до a=function(b,c)?
Я хочу идентифицировать выражение как int a = function(b,c) , поэтому я написал код как последователи: void foo(int* a, int *b) { int x; int m; int z; int *p; if (a[0] > 1) { b[0] = 2; z=10; x = function( sizeof(char)); } m...
288 просмотров

Xcode отключить `Значение, сохраненное в '' во время его инициализации, никогда не читается` предупреждения анализатора
Я понимаю из этот вопрос что я могу отключить предупреждения анализатора, добавив -Xanalyzer -analyzer-disable-all-checks к флагам компилятора, однако я не хочу отключать каждое предупреждение, только это одно предупреждение. Я понимаю, что...
594 просмотров
schedule 01.11.2022

Как использовать статический анализатор clang с msbuild в Windows?
Двоичный установщик windows для clang включает сканирование-сборку, но когда вы запускаете его с помощью msbuild, ничего не происходит. Даже если я сделаю что-то вроде: "C:\Program Files\LLVM\bin\scan-build.bat" "C:\Program...
502 просмотров

Как испортить аргументы командной строки в Clang Static Analyzer
В Clang Static Analyzer у меня есть возможность испортить любой интересующий меня SVal. Однако мне интересно, как я мог испортить аргументы командной строки. Простой пример здесь: int main(int argc, char **argv) { memcpy(xxx,argv[0],xxx); }...
177 просмотров
schedule 10.12.2022

Почему инструменты статического анализа упускают этот, казалось бы, очевидный случай?
У меня есть очень простая программа на C с потенциальным переполнением буфера с использованием strcpy : #include <string.h> #include <stdio.h> void buffer_overflow(char* dst, const char* src) { strcpy(dst, src); } int...
373 просмотров
schedule 25.01.2023

Clang Static Analyzer неожиданное предупреждение указателя NULL
У меня есть следующий код: int s[4096]; unsigned char o = 0; int main(void) { int *n; return ((char *) (s + o)) == 0 ? *n : 0; } Когда я запускаю Clang Static Analyzer для этого кода, он предупреждает меня, что я разыменовываю n ,...
98 просмотров

Что означает ento в контексте Clang Static Analyzer?
Я просмотрел исходный код Clang Static Analyzer и нашел пространство имен под названием ento . Мне все еще интересно, что это значит? Это аббревиатура?
22 просмотров
schedule 03.05.2022

Использование #pragma для удаления предупреждений о clang на основе проверки clang
Я хочу удалить / игнорировать предупреждение о лязгах для блока кода и нашел несколько примеров того, как использовать для этого прагамы. Например, если отображается предупреждение unused-variable , вы можете отключить его, используя: #pragma...
100 просмотров