Я правильно получил предупреждение о выравнивании
приведение увеличивает требуемое выравнивание целевого типа [-Wcast-align]
от компилятора GCC из-за следующего кода:
uint8_t array[100];
uint32_t foo;
foo = * ( (uint32_t *) &array[10]);
Затем я использовал атрибут aligned
, чтобы выяснить проблему:
uint8_t array[100] __attribute__ ((aligned(4)));
uint32_t foo;
foo = * ( (uint32_t *) &array[10]);
Несмотря на этот трюк, я получил то же предупреждение.Это нормально или предупреждение должно исчезнуть?