C1x: When will it land, what to expect?

廉价感情. 提交于 2019-12-03 10:21:45
Jukka Suomela

The ISO/IEC 9899:2011 standard, aka C11, was published in December 2011.

The latest draft is N1570; I'm not aware of any differences between it and the final standard. There's already a Technical Corrigendum fixing an oversight in the specification of __STDC_VERSION__ (now 201112L) and the optional __STDC_LIB_EXT1__ (now 201112L).

I was typing a list of of features, but noticed the Wikipedia page on C1X has a pretty complete listing of all proposed changes.

On the ISO C working group posts 'after meeting' mailings on their website. One of the more interesting is this Editor's Report.

Here's a summary from the Wikipedia page:

  • Alignment specification (_Align specifier, alignof operator, aligned_alloc function)
  • Multithreading support (_Thread_local storage-class specifier, <threads.h> header including thread creation/management functions, mutex, condition variable and thread-specific storage functionality)
  • Improved Unicode support (char16_t and char32_t types for storing UTF-16/UTF-32 encoded data, including the corresponding u and U string literal prefixes and conversion functions in <uchar.h>)
  • Removal of the gets function
  • Bounds-checking interfaces (Annex K)
  • Analyzability features (Annex L)
emsr

I looks like gcc as of 4.6 is starting to look at C1x. They claim to have:

  • Static assertions (_Static_assert keyword)
  • Typedef redefinition
  • New macros in <float.h>
  • Anonymous structures and unions
Jerry Coffin

Probably the best place to find the current status would be to look at the latest draft of the new version of the C standard. Warning: though it's coming directly from the committee, the server behind that link isn't always the most responsive...

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!