4.2.6.9  
Bit field assignment
 
CC-RH can switch the order of a bit field.
| 
(1) | Format for specifying bit field assignment | 
Specify bit field assignment using the following format.
| #pragma bit_order [{left|right}] | 
 
If left is specified, then members are assigned from the MSB; if right is specified, then they are assigned from the LSB.
| 
Example 1. | The default is right. | 
| #pragma bit_order right struct {        unsigned int    f1:30;         int             f2:14;         unsigned int    f3:6; } flag; | 
 
The internal representation for the bit field in the above example is as follows.
| 
Figure 4.8 | Internal Representation of Bit Field | 
| #pragma bit_order left struct {        unsigned int    f1:30;         int             f2:14;         unsigned int    f3:6; } flag; | 
 
The internal representation for the bit field in the above example is as follows.
| 
Figure 4.9 | Internal Representation of Bit Field | 
| #pragma bit_order right struct {    int             f1:5;     char            f2:4;     int             f3:6; } flag; | 
 
The internal representation for the bit field in the above example is as follows.
| 
Figure 4.10 | Internal Representation of Bit Field | 
| #pragma bit_order left struct {    int             f1:5;     char            f2:4;     int             f3:6; } flag; | 
 
The internal representation for the bit field in the above example is as follows.
| 
Figure 4.11 | Internal Representation of Bit Field |