2.1.106. --[un]signed_bitfields

此选项使类型为 int 的位域带符号或无符号。

C 标准规定:如果在声明位域时所使用的类型说明符是 int,或者是定义为 inttypedef 名称,则位域是带符号还是无符号将取决于实现情况。

缺省选项

缺省为 --unsigned_bitfields

Note

在 AAPCS 标准的 2.03 版中,放松了对 ARM 上位域缺省情况下无符号的要求。

示例


typedef int integer;



struct

{

    integer x : 1;

} bf;

--signed_bitfields 编译此代码会将位域视为有符号位域。

Copyright © 2007 ARM Limited. All rights reserved. ARM DUI 0348AC
Non-Confidential