Эти дефекты являются ошибками, относящимися к синтаксису программирования. К этим дефектам относятся:
Присваивание по сравнению с операторами равенства
Несоответствия между квалификаторами или объявлениями переменных
Неправильно отформатированные строки
Abnormal termination of exit handler | Функция обработчика выхода прерывает нормальное выполнение программы |
Accessing object with temporary lifetime | Операции чтения или записи для объекта не определены |
Alternating input and output from a stream without flush or positioning call | Неопределенное поведение для операций входного или выходного потока |
Assertion | Неуспешная инструкция утверждения |
Bad file access mode or status | Аргумент режима доступа функции в fopen или open недопустимая группа |
Call through non-prototyped function pointer | Указатель функции, объявленный без его типа или количества параметров, вызывает непредвиденное поведение |
Call to memset with unintended value | memset или wmemset используется, возможно, с неверными аргументами |
Character value absorbed into EOF | Преобразование типа данных делает допустимое символьное значение таким же, как и в End-of-File (EOF) |
Copy of overlapping memory | Исходные и целевые аргументы функции копирования имеют перекрывающуюся память |
Declaration mismatch | Несоответствие между объявлениями функции или переменной |
Environment pointer invalidated by previous operation | Звонок в setenv или putenv функция семейства изменяет среду, на которую указывает указатель |
Errno not reset | errno не сбрасывать перед вызовом функции, которая устанавливает errno |
Floating point comparison with equality operators | Неточное сравнение переменных с плавающей запятой |
Format string specifiers and arguments mismatch | Спецификаторы формата в printf-like функции не соответствуют соответствующим аргументам |
Function called from signal handler not asynchronous-safe | Вызов прерванной функции вызывает неопределенное поведение программы |
Function called from signal handler not asynchronous-safe (strict) | Вызов прерванной функции вызывает неопределенное поведение программы |
Improper array initialization | Неправильная инициализация массива при использовании инициализаторов |
Incorrect data type passed to va_arg | Тип данных аргумента переменной функции не соответствует типу в va_arg звонить |
Incorrect pointer scaling | Неявное масштабирование в арифметике указателя может быть проигнорировано |
Incorrect type data passed to va_start | Тип данных второго аргумента для va_start макрос приводит к неопределенному поведению |
Incorrect use of offsetof in C++ | Неверные аргументы для offsetof макрос вызывает неопределенное поведение |
Incorrect use of va_start | va_start вызывается в непараметрической функции или вызывается со вторым аргументом, который не является самым правым параметром вариадической функции |
Incorrect value forwarding | Переданный объект может быть неожиданно изменен |
Inline constraint not respected | Изменяемая статическая переменная изменяется в нестатической встроенной функции |
Invalid assumptions about memory organization | Адрес вычисляется путем добавления или вычитания из адреса переменной |
Invalid file position | fsetpos() вызывается с аргументом позиции файла, не полученным из fgetpos() |
Invalid use of = (assignment) operator | Назначение в условном операторе |
Invalid use of == (equality) operator | Операция равенства в операторе назначения |
Invalid use of standard library routine | Неверные аргументы для стандартной библиотечной функции |
Invalid va_list argument | Список переменных аргументов, использованный после признания недействительным с va_end или не инициализирован с помощью va_start или va_copy |
Memory comparison of padding data | memcmp сравнивает данные, сохраненные в дополнении структуры |
Memory comparison of float-point values | Объектное представление значений с плавающей запятой может быть различным (одинаковым) для равных (не равных) значений с плавающей запятой |
Memory comparison of strings | memcmp сравнивает данные, сохраненные в строках после нуль-терминатора |
Missing byte reordering when transferring data | Различная структура хоста и сети |
Missing null in string array | Строка не заканчивается нулевым символом |
Misuse of a FILE object | Использование копии объекта FILE |
Misuse of errno | errno неправильно проверены на наличие ошибок |
Misuse of narrow or wide character string | Узкая (широкая) символьная строка, передаваемая функции широкой (узкой) строки |
Misuse of errno in a signal handler | Вы читаете errno после вызова errno-настройка функции в обработчике сигналов |
Misuse of structure with flexible array member | Выделение памяти игнорирует гибкий элемент массива |
Misuse of sign-extended character value | Преобразование типа данных с расширением знака вызывает непредвиденное поведение |
Misuse of return value from nonreentrant standard function | Указатель на статический буфер из предыдущего вызова используется, несмотря на последующий вызов, который изменяет буфер |
Modification of internal buffer returned from nonreentrant standard function | Функция пытается изменить внутренний буфер, возвращенный из неинтенсивной стандартной функции |
Noncompliance with AUTOSAR specification | Функция RTE API используется с аргументами, которые нарушают стандартную спецификацию AUTOSAR |
Overlapping assignment | Перекрытие памяти между левой и правой сторонами назначения |
Possible misuse of sizeof | Использование sizeof оператор может привести к непреднамеренным результатам |
Possibly unintended evaluation of expression because of operator precedence rules | Правила приоритета оператора вызывают непредвиденный порядок вычисления в арифметическом выражении |
Predefined macro used as object | Используются стандартные макросы библиотеки, например: assert и errno как объекты |
Preprocessor directive in macro argument | Директива препроцессора используется в аргументе к функциональному макросу |
Qualifier removed in conversion | Квалификатор переменной теряется во время преобразования |
Return from computational exception signal handler | Неопределенное поведение при обычном возвращении обработчика сигнала из ошибки программы |
Side effect in arguments to unsafe macro | Макрос содержит аргументы, которые можно вычислять несколько раз или не вычислять |
Side effect of expression ignored | sizeof, _Alignof, или _Generic оперирует выражением с побочным эффектом |
Signal call from within signal handler | Вызов несуществующего обработчика сигнала signal() в системе Windows вызывает состояние гонки |
Shared data access within signal handler | Доступ или изменение общих данных приводит к несогласованному состоянию |
Standard function call with incorrect arguments | Аргумент стандартной функции не соответствует требованиям для использования в функции |
Stream argument with possibly unintended side effects | Побочные эффекты аргумента потока возникают несколько раз |
Too many va_arg calls for current argument list | Количество вызовов для va_arg превышает число аргументов, переданных переменной функции |
Typedef mismatch | Несоответствие между typedef заявления |
Universal character name from token concatenation | Вы создаете универсальное символьное имя, соединяя маркеры с ## оператор |
Unnamed namespace in header file | Файл заголовка содержит безымянное пространство имен, что приводит к нескольким определениям |
Unsafe conversion between pointer and integer | Несовпадающие или недопустимые результаты преобразования типов указателей и целых чисел |
Unsafe conversion from string to numerical value | Преобразование строки в номер без проверки |
Use of indeterminate string | Использование буфера из функции fgets-family |
Use of memset with size argument zero | Аргумент размера функции в memset семейство равно нулю |
Variable length array with nonpositive size | Размер массива переменной длины равен нулю или отрицателен |
Writing to const qualified object | Объект, объявленный с помощью const квалификатор изменен |
Wrong type used in sizeof | sizeof аргумент не соответствует указываемому типу |
Группы дефектов для поиска ошибок
Проверки дефектов Bug Finder подразделяются на такие группы, как поток данных, параллелизм, числовые и т. д.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.