Согласно Autosar_SWS логическое значение должно быть unsigned char
. Но в моих композициях много нарушений MISRA, таких как правило MISRA 10.1 (нарушение преобразования), правило 12.6 (эффективное логическое значение).
Я хотел бы знать, переопределяю ли я BOOLEAN для своего приложения, как показано ниже:
#ifdefine BOOLEAN_T
#undefine BOOLEAN_T
typedef struct {
unsigned char TRUE : 1;
unsigned char FALSE : 1;
} BOOLEAN_T;
#define TRUE 1;
#define False 0;
#endif
Каковы будут проблемы безопасности и последствия?