Difference between revisions of "c/11"
From cppreference.com
< c
m (→Feature test macros for optioal features) |
m (→Feature test macros for optional features) |
||
Line 34: | Line 34: | ||
* {{ltt|c/preprocessor/replace|__STDC_NO_COMPLEX__}} | * {{ltt|c/preprocessor/replace|__STDC_NO_COMPLEX__}} | ||
** Indicates complex types and the complex math functions are not supported if defined. | ** Indicates complex types and the complex math functions are not supported if defined. | ||
− | * | + | *: These features were mandatory in C99. |
* {{ltt|c/preprocessor/replace|__STDC_NO_THREADS__}} | * {{ltt|c/preprocessor/replace|__STDC_NO_THREADS__}} | ||
** Indicates thread local storage and the thread support library are not supported if defined. | ** Indicates thread local storage and the thread support library are not supported if defined. | ||
* {{ltt|c/preprocessor/replace|__STDC_NO_VLA__}} | * {{ltt|c/preprocessor/replace|__STDC_NO_VLA__}} | ||
** Indicates [[c/language/array#Variable-length arrays|variable length arrays and variably modified types]] are not supported if defined. | ** Indicates [[c/language/array#Variable-length arrays|variable length arrays and variably modified types]] are not supported if defined. | ||
− | * | + | *: These features were mandatory in C99. |
==New library features== | ==New library features== |
Revision as of 01:37, 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
- 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