C1999-3(7) Miscellaneous Information Manual C1999-3(7)

3 Terms, definitions, and symbolsWG14 N1256, clause 3

For the purposes of this International Standard, the following definitions apply. Other terms are defined where they appear in italic type or on the left side of a syntax rule. Terms explicitly defined in this International Standard are not to be presumed to refer implicitly to similar terms defined elsewhere. Terms not defined in this International Standard are to be interpreted according to ISO/IEC 2382−1. Mathematical symbols not defined in this International Standard are to be interpreted according to ISO 31−11.

〈execution-time action〉 to read or modify the value of an object

Where only one of these two actions is meant, ‘‘read’’ or ‘‘modify’’ is used.

‘‘Modify’’ includes the case where the new value being stored is the same as the previous value.

Expressions that are not evaluated do not access objects.

requirement that objects of a particular type be located on storage boundaries with addresses that are particular multiples of a byte address

actual argument actual parameter (deprecated) expression in the comma-separated list bounded by the parentheses in a function call expression, or a sequence of preprocessing tokens in the comma-separated list bounded by the parentheses in a function-like macro invocation

external appearance or action

unspecified behavior where each implementation documents how the choice is made

An example of implementation-defined behavior is the propagation of the high-order bit when a signed integer is shifted right.

behavior that depends on local conventions of nationality, culture, and language that each implementation documents

An example of locale-specific behavior is whether the islower function returns true for characters other than the 26 lowercase Latin letters.

behavior, upon use of a nonportable or erroneous program construct or of erroneous data, for which this International Standard imposes no requirements

Possible undefined behavior ranges from ignoring the situation completely with unpredictable results, to behaving during translation or program execution in a documented manner characteristic of the environment (with or without the issuance of a diagnostic message), to terminating a translation or execution (with the issuance of a diagnostic message).

An example of undefined behavior is the behavior on integer overflow.

use of an unspecified value, or other behavior where this International Standard provides two or more possibilities and imposes no further requirements on which is chosen in any instance

An example of unspecified behavior is the order in which the arguments to a function are evaluated.

unit of data storage in the execution environment large enough to hold an object that may have one of two values

It need not be possible to express the address of each individual bit of an object.

addressable unit of data storage large enough to hold any member of the basic character set of the execution environment

It is possible to express the address of each individual byte of an object uniquely.

A byte is composed of a contiguous sequence of bits, the number of which is implementation-defined. The least significant bit is called the low-order bit; the most significant bit is called the high-order bit.

〈abstract〉 member of a set of elements used for the organization, control, or representation of data

single-byte character 〈C〉 bit representation that fits in a byte

sequence of one or more bytes representing a member of the extended character set of either the source or the execution environment

The extended character set is a superset of the basic character set.

bit representation that fits in an object of type wchar_t, capable of representing any character in the current locale

restriction, either syntactic or semantic, by which the exposition of language elements is to be interpreted

representation in the result format that is nearest in value, subject to the current rounding mode, to what the result would be given unlimited range and precision

message belonging to an implementation-defined subset of the implementation’s message output

reference to a later subclause of this International Standard that contains additional information relevant to this subclause

particular set of software, running in a particular translation environment under particular control options, that performs translation of programs for, and supports execution of functions in, a particular execution environment

implementation limit
restriction imposed upon programs by the implementation

region of data storage in the execution environment, the contents of which can represent values

When referenced, an object may be interpreted as having a particular type; see 6.3.2.1.

formal parameter formal argument (deprecated) object declared as part of a function declaration or definition that acquires a value on entry to the function, or an identifier from the comma-separated list bounded by the parentheses immediately following the macro name in a function-like macro definition

specification that is strongly recommended as being in keeping with the intent of the standard, but that may be impractical for some implementations

precise meaning of the contents of an object when interpreted as having a specific type

unspecified value where each implementation documents how the choice is made

either an unspecified value or a trap representation

valid value of the relevant type where this International Standard imposes no requirements on which value is chosen in any instance

An unspecified value cannot be a trap representation.

 x ceiling of x: the least integer greater than or equal to x

2. 4 is 3, −2. 4 is −2.

 x floor of x: the greatest integer less than or equal to x

2. 4 is 2, −2. 4 is −3.

September 7, 2007 posix.fail