Вопросы по теме 'misra'
Кто-нибудь создал C-файл для проверки инструментов проверки кода для MISRA-2004?
Мы используем PC-Lint для проверки наших исходников на соответствие MISRA-2004. Поскольку это проект, связанный с безопасностью, и мы движемся к получению сертификата от TUV, нам нужно доказать нашу уверенность в этом инструменте (они не принимают...
773 просмотров
schedule
01.05.2022
Сохранить указатель на массив в области файла из параметра массива в функции
Я перестраиваю приложение для соответствия правилам MISRA и использую QA-C для анализа своего кода.
Одно из этих раздражающих правил касается указателей и массивов. Вы не можете сказать:
char foo[10];
char * bar = &(foo[0]);
bar[5] =...
1662 просмотров
schedule
16.04.2023
В чем разница между интегральным продвижением и балансировкой в C?
Чем отличается интегральная раскрутка от балансировки. Можем ли мы суммировать оба правила, сказав, что любой тип преобразуется по крайней мере в тип int или unsigned int перед выполнением любой операции (кроме логических операторов &&, ||,!) и в...
1374 просмотров
schedule
15.11.2022
MISRA 9.2 инициализация массивов с плавающей запятой и беззнаковых массивов
В следующих строках я получаю сообщения о различных проблемах из инструмента статического анализа Parasoft C / C ++ Test и из программы проверки MISRA IAR Embedded Workbench:
[1] static unsigned int array_a[30] = {0U};
[2] static float array_b[20]...
2136 просмотров
schedule
10.09.2022
Переопределение unsigned Char Boolean_type на структуру True и False
Согласно Autosar_SWS логическое значение должно быть unsigned char . Но в моих композициях много нарушений MISRA, таких как правило MISRA 10.1 (нарушение преобразования), правило 12.6 (эффективное логическое значение).
Я хотел бы знать,...
1836 просмотров
schedule
10.10.2022
Почему MISRA-C:2004 выдает здесь ошибку?
Кажется, я продолжаю получать ошибки правил 10.1 и 10.3 MISRA-C:2004 для назначения lShift в следующем фрагменте и не вижу, что еще можно сделать, чтобы удовлетворить требование... почему я все еще получаю ошибку?
#define...
1505 просмотров
schedule
21.10.2022
обоснование Misra 2012, не допускающего приведения между разными указателями
В настоящее время я работаю над проектом, который требует, чтобы код был совместим с Misra 2012. На протяжении всего проекта у нас есть много необходимых предупреждений misra, говорящих нам, что мы не можем преобразовать указатель на один тип в...
7804 просмотров
schedule
15.02.2023
Выбор рекомендаций: MISRA 1998, MISRA 2004 или MISRA 2012?
Мне всегда было интересно, как проект/команда/компания выбирает или получает право выбирать конкретное руководство, которому нужно следовать, например, MISRA 1998/2004/2012? Как узнать и решить, какое руководство будет достаточным...
1881 просмотров
schedule
08.06.2023
Когда я должен использовать UINT32_C(), INT32_C(), макросы в C?
Я переключился на целочисленные типы фиксированной длины в своих проектах главным образом потому, что они помогают мне более четко представлять целочисленные размеры при их использовании. Включение их через #include <inttypes.h> также...
2472 просмотров
schedule
10.03.2023
Влияет ли правило MISRA C++ 7-1-1 на ссылки?
Правило 7-1-1 (обязательное) Неизменяемая переменная должна быть квалифицирована как const
Если переменную не нужно изменять, она должна быть объявлена с квалификацией const, чтобы ее нельзя было изменить. Тогда непараметрическая...
1168 просмотров
schedule
19.01.2023
Нарушение правила 10.3 MISRA C-2012 из-за добавления двух 8-битных переменных, что привело к 32-битному
Я получаю нарушение правила 10.3 MISRA C-2012: неявное преобразование «var4 + var5» из 32-битного целого со знаком основного типа в другой или более узкий 8-битный беззнаковый тип основного типа для приведенного ниже кода.
int8_t var4 = -10;...
5913 просмотров
schedule
14.03.2022
Соответствуют ли библиотеки BLAS и LAPACK стандарту MISRA?
Думаю, ответ нет . Тем не менее, мне было интересно, если кто-то имеет некоторое представление об этой теме.
Соответствуют ли библиотеки BLAS и LAPACK стандартам MISRA? Стандарты MISRA (MISRA C:1998, MISRA C:2004, MISRA C:2012) чрезвычайно...
136 просмотров
schedule
08.08.2022
Недопустимый операнд для операторов «››» и «&» (MISRA C)
При проверке кода с помощью Misra он генерировал следующие сообщения
Unpermitted operand to operator '>>' [MISRA 2012 Rule 10.1 required]
Unpermitted operand to operator '&' [MISRA 2012 Rule 10.1 required]
Мне не удалось разобраться...
1142 просмотров
schedule
25.03.2023
Поразрядный сдвиг (varUint8 ›› 7) & 0x01u - соответствует требованиям Misra
Я устраняю какой-то код, и я обнаружил эту строку
uint8var = ((constUint8[0]) >> 7) & 0x01u;
Мне было интересно, какова в этом правильная практика. Требуется ли & 0x01u для правильной реализации при написании кода,...
221 просмотров
schedule
06.12.2022
Как исправить нарушение Misra 2012, операция присваивания в выражении
Я пытаюсь немного очистить 32-битную переменную с помощью макроса. например.
#define CLEAR_BIT( VAR, BIT ) ( VAR &= ~( BIT ) )
в функции я назвал макрос как
CLEAR_BIT(variable, 0x01 );
В этом случае я получаю нарушение...
808 просмотров
schedule
09.07.2023
Функциональный макрос REPORT_ERROR, определенный [Директива MISRA 2012 4.9, рекомендательный]
Я определил MACRO , который будет вызывать функцию и передавать аргумент. Получение ниже предупреждения MISRA для этого случая. Разве это не разрешено? Как этого избежать?
Каковы преимущества вызова функции (функций) в MACRO , как показано...
347 просмотров
schedule
14.10.2022
статическая встроенная функция в файле заголовка и проблема с правилом 8.5.
Я использую микроконтроллер «IAR RL78» и «RL78-R5F10BGG». Я также включил MISRA C 2004 в IAR.
Я хочу определить одну из моих функций как «встроенную». Эта встроенная функция должна использоваться в различных файлах c. Итак, я определил функцию в...
488 просмотров
schedule
14.07.2022
Перечисления и бинарные или операторы (MISRA C++ 2008, 4-5-2)
MISRA C++ 2008, 4-5-2 гласит: выражения с типом enum не должны использоваться в качестве операндов для встроенных операторов, кроме оператора нижнего индекса [ ], оператора присваивания =, операторов равенства == и !=, унарный оператор & и...
202 просмотров
schedule
15.06.2022
Правило MISRA2004-12_8-3 имеет нарушение статического анализа для операнда RHS (32u - n) даже с проверкой пределов
В настоящее время я пытаюсь использовать программное обеспечение parasoft для исправления нарушений статического анализа моего кода с использованием стандартов кодирования MISRA C. Мой код изначально имел эту функцию:
static inline uint32_t...
76 просмотров
schedule
04.02.2023
Нарушение Misra 10.1 в отношении операций с операторами (MISRA C 2012)
мне нужна помощь с куском кода. У меня есть массив, назовем его массивом[4]. Теперь я хочу проверить, что по крайней мере 3 элемента этого массива выше порога. (если утверждение)
E.g.
if(2 > ((array[0] > threshold) + (array[1] >...
67 просмотров
schedule
11.04.2023