Difference between revisions of "c/11"
From cppreference.com
< c
m (→Feature test macros for optional features) |
m (→New language features: _Static_assert) |
||
Line 23: | Line 23: | ||
* Fine-grained [[c/language/eval order|evaluation order]] | * Fine-grained [[c/language/eval order|evaluation order]] | ||
* Extending the lifetime of [[c/language/lifetime#Temporary lifetime|temporary objects]] | * Extending the lifetime of [[c/language/lifetime#Temporary lifetime|temporary objects]] | ||
+ | * {{ltt|c/language/_Static_assert}} | ||
* [[c/language/analyzability|Analyzability]] | * [[c/language/analyzability|Analyzability]] | ||
Revision as of 01:49, 6 August 2021
ISO/IEC 9899:2011, a.k.a. C11, is a previous revision of the C standard.
Contents |
Obsolete
Removed
New language features
- Multithreaded environments
- Enhanced alignment support
- Alignment query (_Alignof)
- Alignment strengthening (_Alignas)
- Over-aligned types
- Unicode support
- Generic selection exprssions (_Generic)
- Non-returning functions (_Noreturn)
- Fine-grained evaluation order
- Extending the lifetime of temporary objects
- _Static_assert
- Analyzability
Feature test macros for optional features
- __STDC_ANALYZABLE__
- Indicates analyzability is supported if defined
- __STDC_LIB_EXT1__
- Indicates bounds checking functions are supported if defined.
- __STDC_NO_ATOMICS__
- Indicates atomic objects and the atomic operation library are not supported if defined.
- __STDC_NO_COMPLEX__
- Indicates complex types and the complex math functions are not supported if defined.
- These features were mandatory in C99.
- __STDC_NO_THREADS__
- Indicates thread local storage and the thread support library are not supported if defined.
- __STDC_NO_VLA__
- Indicates variable length arrays and variably modified types are not supported if defined.
- These features were mandatory in C99.
New library features
New headers
-
<stdalign.h>
-
<stdatomic.h>
-
<stdnoreturn.h>
-
<threads.h>
-
<uchar.h>
Library features
- Multithreaded environment
- aligned_alloc()
- UTF-16/32 type aliases
- UTF-16/32 conversion functions
- quick_exit
- at_quick_exit
- Exclusive modes of fopen() and freopen() ("x")
- Bounds checking functions
- New numeric limit macros
- Thread local errno
Defect reports
Template:c/language/history/DR11