Hi Alexey,
I had a similar problem recently ...
CINT cannot work with bit-fields.
Though I don't understand the directive __attribute__((packed)) I propose
to try the following, possibly you have also to use the __CINT__ constant
to exclude it from the parsing. rootcint has then to be called with -p
option, I think.
struct atic_header{
union {
unsigned int bitf;
#ifndef __CINT_
struct {
unsigned short msec:11;
unsigned short crc:13;
unsigned char subtype:5;
unsigned char type:3;
} bits;
#endif
} packed;
unsigned long time;
unsigned short size;
} __attribute__ ((packed));
But you should check, that the packing is the same for both variants.
Happy rooting
Hermann-Josef
>
> I need to use packed structures in my code. So, in order to have g++
> create them correctly, I need to create struct types like:
>
> struct atic_header{
> unsigned msec:11;
> unsigned crc:13;
> unsigned subtype:5;
> unsigned type:3;
> unsigned long time;
> unsigned short size;
> } __attribute__ ((packed));
>
> typedef struct atic_header Atic_Header;
>
> But this is a problem, since root's dictionary generator does not like
> this and gives errors like:
>
> Error: ';' missing after class/struct/enum declaration FILE:filename
> LINE:line
> Warning: Unknown type (packed) in function argumant FILE:filename
> LINE:line
>
> How do I fix this?
> Alexey
>
>
**************************************************************************
* *
* Dr. Hermann-Josef Mathes *
* KASCADE & AUGER Collaboration *
* Forschungszentrum Karlsruhe Phone: +49 7247 822429 *
* Institut fuer Kernphysik FAX: +49 7247 824075 *
* POB 3640 *
* D-76021 Karlsruhe/Germany Mail: mathes@ik3.fzk.de *
* hjmathes@web.de *
* *
**************************************************************************
* Feel free to visit my homepage: *
* http://www-ik3.fzk.de/~mathes/Welcome.html *
* My software project page for DAQ: *
* http://www-ik3.fzk.de/~mathes/software/software.html *
* *
* Visit the institute and project homepages: *
* http://www-ik3.fzk.de/ *
* http://www-ik1.fzk.de/KASCADE_home.html *
**************************************************************************
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:29 MET