Компилятор Keil uvision 5 ругается на union

для удобства нужно использовать объедение union, но компилятор ругается, пробовал добавлять #pragma pack(n) (n-количество байт), но не помогло, как решить проблему, в IAR с этим проблем не было. Кусок кода представлен ниже, заранее спасибо!!!

typedef struct
{
    uint32_t ID;
    uint8_t DLC;
    union
    {
        uint8_t data[8];
        struct{
            uint32_t data32[2];
        };
    };  
}CanMsg;

Ответы (1 шт):

Автор решения: gbg

Собственно, ответ на вопрос приведен в тексте ошибки - C не позволяет создавать union без имен, это расширение gnu. Или включайте расширение, или придумывайте имена.

→ Ссылка