Hi, I want to know, how enums are handled in gcc. How do we map an enum value to the corresponding integer size. What does the option -fshort-enums does. Plz explain me in detail. Given an enum value, how do we calculate or determine that what size should the enum occupy. Does all the enum have a same size of 4 bytes or does it varies depending on the initializing value? Regards Gaurav