john wrote:
> I'm trying to declare a structure but I keep getting an error like this
> or similar depending on were I try to put __attribute__.
>
> error: expected '=', ',', ';', 'asm' or '__attribute__' before 'struct'
>
> Does avr-gcc allow plain-old structures? How should I write this to get
> it to compile?
>
> struct __attribute__ ((__packed__)) rb_fifo_struct_type
> {
> uint8_t *head;
> uint8_t *tail;
> uint8_t *dptr;
> };
> typedef struct rb_fifo_struct_type rbuff_t;
Try: __attribute__ ((packed));
I think you should be doing:
struct rb_fifo_struct_type
{
uint8_t *head __attribute__ ((packed));
uint8_t *tail __attribute__ ((packed));
uint8_t *dptr __attribute__ ((packed));
};
typedef struct rb_fifo_struct_type rbuff_t;Message
Re: [AVR-Chat] structures in gcc
2008-01-24 by Russell Shaw
Attachments
- No local attachments were found for this message.