...
Anchor | ||||
---|---|---|---|---|
|
async-signal-safe function [ISO/IEC 9945:2008]
A function that may be invoked, without restriction, from signal-catching functions. No function [defined in ISO/IEC 9945] is async-signal-safe unless explicitly described as such. See also #asynchronousasynchronous-safe.
Anchor | ||||
---|---|---|---|---|
|
asynchronous-safe function [GNU Pth]
A function is asynchronous-safe, or asynchronous-signal safe, if it can be called safely and without #side side effects from within a signal handler context. That is, it must be able to be interrupted at any point to run linearly out of sequence without causing an inconsistent state. It must also function properly when global data might itself be in an inconsistent state. Some asynchronous-safe operations are listed here:
...
Anchor | ||||
---|---|---|---|---|
|
function-like macro [ISO/IEC 9899-1999]
A
#define
preprocessing directive that defines an identifier immediately followed by zero or more parameters, the ellipsis (...
), or a combination of the two, enclosed in parentheses, similar syntactically to a function call. Subsequent instances of the macro name followed by a parenthesized list of arguments in a translation unit are replaced by the replacement list of preprocessing tokens that constitute the remainder of the directive. See also #objectobject-like macro and #unsafe unsafe function-like macro.Anchor | ||||
---|---|---|---|---|
|
hosted environment [ISO/IEC 9899-1999]
An environment that is not freestanding. Program startup occurs at
main()
, complex types are implemented, and all C standard library facilities are available....
Anchor | ||||
---|---|---|---|---|
|
indeterminate value [ISO/IEC 9899-1999]
Either an #unspecified unspecified value or a #trap trap representation.
Anchor | ||||
---|---|---|---|---|
|
invalid pointer
A pointer that is not a #valid valid pointer.
Anchor | ||||
---|---|---|---|---|
|
liveness
Every operation or method invocation executes to completion without interruptions, even if it goes against safety.
...
Anchor | ||||
---|---|---|---|---|
|
normal termination [Open Group 2008]
Normal termination occurs by a return from
main()
, when requested with the exit()
, _exit()
, or _Exit()
functions; or when the last thread in the process terminates by returning from its start function, by calling the pthread_exit()
function, or through cancellation. See also #abnormal abnormal termination.Anchor | ||||
---|---|---|---|---|
|
object-like macro [ISO/IEC 9899-1999]
A
#define
preprocessing directive that defines an identifier with no parentheses. Subsequent instances of the macro name in a translation unit are replaced by the replacement list of preprocessing tokens that constitute the remainder of the directive. See also #functionfunction-like macro.Anchor | ||||
---|---|---|---|---|
|
reentrant [Dowd 2006]
A function is reentrant if multiple instances of the same function can run in the same address space concurrently without creating the potential for inconsistent states.
...
Anchor | ||||
---|---|---|---|---|
|
sequence point C99 [ISO/IEC 9899-1999]
Evaluation of an expression may produce #side side effects. At specific points in the execution sequence called sequence points, all side effects of previous evaluations have completed, and no side effects of subsequent evaluations have yet taken place.
...
Anchor | ||||
---|---|---|---|---|
|
trap representation [ISO/IEC 9899-1999]
Object representation that does not represent a value of the object type. Attempting to read the value of an object that has a trap representation other than by an expression that has a character type is undefined. Producing such a representation by a #side side effect that modifies all or any part of the object other than by an expression that has a character type is undefined.
...
Anchor | ||||
---|---|---|---|---|
|
unsafe function-like macro
A #functionfunction-like macro whose expansion causes one or more of its arguments not to be evaluated exactly once.
...
Anchor | ||||
---|---|---|---|---|
|
unspecified value [ISO/IEC 9899-1999]
A valid value of the relevant type where the C Standard imposes no requirements on which value is chosen in any instance. An unspecified value cannot be a #trap trap representation.
Anchor | ||||
---|---|---|---|---|
|
valid pointer
A pointer that refers to an element within an array or one past the last element of an array. For the purposes of this definition, a pointer to an object that is not an element of an array behaves the same as a pointer to the first element of an array of length one with the type of the object as its element type. (Cf 6.5.8p3)
For the purposes of this definition, an object can be considered to be an array of a certain number of bytes; that number is the size of the object, as produced by the
sizeof
operator....