cpp/language/as if

Allows any and all code transformations that do not change the observable behavior of the program.

Explanation
The C++ compiler is permitted to perform any changes to the program as long as the following remains true:

@2@ At program termination, data written to files is exactly as if the program was executed as written.

@3@ Prompting text which is sent to interactive devices will be shown before the program waits for input.

@4@ If the ISO C pragma is supported and is set to, the changes to the floating-point environment (floating-point exceptions and rounding modes) are guaranteed to be observed by the floating-point arithmetic operators and function calls as if executed as written, except that
 * the result of any floating-point expression other than cast and assignment may have range and precision of a floating-point type different from the type of the expression (see flt_eval_method)
 * notwithstanding the above, intermediate results of any floating-point expression may be calculated as if to infinite range and precision (unless is )