Show: Object Pascal C++
Display Preferences

Boolean short-circuit evaluation (Object Pascal compiler directive)

From Appmethod Topics
Jump to: navigation, search

Go Up to Object Pascal Compiler Directives (List) Index


Type

Switch

Syntax

{$B+} or {$B-} {$BOOLEVAL ON} or {$BOOLEVAL OFF}

Default

{$B-} {$BOOLEVAL OFF}

Scope

Local

Remarks

The $B directive switches between the two different models of Object Pascal code generation for the and and or Boolean operators.

In the {$B+} state, the compiler generates code for complete Boolean expression evaluation. This means that every operand of a Boolean expression built from the and and or operators is guaranteed to be evaluated, even when the result of the entire expression is already known.

In the {$B-} state, the compiler generates code for short-circuit Boolean expression evaluation, which means that evaluation stops as soon as the result of the entire expression becomes evident in left to right order of evaluation.

See Also

Personal tools
In other languages