是否有任何c编译器实现任何C1X功能?
答
GCC 4.6已经为C1X一些实验支持功能:
目前人们从即将到来的一些功能的实验性支持ISO C标准的C1X修订版。对于使用GNU扩展的C1X,可以使用-std = c1x或-std = gnu1x选择此支持。请注意,此支持是实验性的,可能会在未来的版本中与C1X标准草案的变更保持一致。 N1539草案C1X中所述新增支持以下功能(2011年3月第14次WG14会议商定了更改);一些其他功能已经被支持,无需编译器更改,或有一些支持,但不完全符合N1539(经修订)。
- 静态断言(_Static_assert关键字)
- 重新定义的typedef
- 新宏在< float.h时>
- 匿名结构和联合
答
基于名单的审读gcc测试套件(ls gcc/gcc/testsuite/gcc.dg/c1x *):
- 我在gcc-4.7中看起来像_Noreturn is coming。
- 从测试套件看起来,unicode字符串也是如此。
- 它也看起来像CMPLX宏are being worked也。
- 也许_Generic即将在gcc-4.8。
答
除了gcc,clang已经开始增加对C1x功能的支持。特别是支持_Generic
和_Static_assert
。其他一些功能也可以实现,但我没有尝试过。