IAR 5.50.1
Имеем структуру
Код
typedef struct usb_common_descriptor_tag
{
u8_t bLength;
u8_t bDescriptorType;
} usb_common_descriptor_t;
Код который выдает ошибку при компиляци
Код
usb_common_descriptor_t *ptr;
...
(u8_t*)ptr += ptr-> bLength;
Ошибка:
Цитата
Error[Pe137]: expression must be a modifiable lvalue ...
Если написать так
Код
usb_common_descriptor_t *ptr;
u8_t *ptr8;
...
ptr8 = (u8_t*)ptr;
ptr8 += ptr-> bLength;
ptr = (usb_common_descriptor_t*)ptr8;
Компилирует как надо, это я чего не понимаю или бяка в компилере ?