Implementation-defined behaviour

implementation-defined behavior behavior, for a well-formed program construct and correct data, that depends on the implementation and that each implementation shall document.
 * &mdash; ISO/IEC 14882:1998, §1.3.5

Implementation-defined behaviour is an action by a program the result of which is not defined by the standard, but which the implementation is required to document. A program exhibiting implementation-defined behaviour may behave differently on different implementations, but its behaviour on any particularly implementation is well defined. Relying on implementation-defined behaviour does not usually indicate a programming error, but it may be unintentional. (Compare undefined behaviour, behaviour which the standard does not specify and which implementations are not required to document.)

Examples of implementation-defined behaviour are the size of the basic types (such as int and short).