Version 11 | Version 12 | Version 13
pass fail | pass fail | pass fail test
==== ==== | ==== ==== | ==== ==== ====
1 | 1 | 1 boolean default constructor
1 | 1 | 1 boolean copy constructor
2 | 2 | 2 boolean constructor accepting FALSE/TRUE
3 | 3 | 3 boolean aggregate initialized with
| | boolean/FALSE/TRUE
1 | 1 | 1 overload operator on boolean
3 | 3 | 3 assign boolean/FALSE/TRUE to boolean
1 | 1 | 1 assign result of equality operator to
| | boolean
1 | 1 | 1 assign result of logical operator to boolean
1 | 1 | 1 assign result of relational operator to
| | boolean
3 | 3 | 3 boolean/FALSE/TRUE both operands of equality
| | operator
3 | 3 | 3 boolean/FALSE/TRUE both operands of logical
| | operator
3 | 3 | 3 boolean/FALSE/TRUE conditional expression
3 | 3 | 3 boolean/FALSE/TRUE controlling expression of
| | 'if' statement
2 | 2 | 2 FALSE/TRUE case label
3 | 3 | 3 non-boolean aggregate initialized with
| | boolean/FALSE/TRUE
1 | 1 | 1 boolean initialized with non-boolean
2 | 2 | 2 FALSE/TRUE enumerator initializer
2 | 2 | 2 FALSE/TRUE array dimension
15 3 | 15 3 | 16 2 assign scalar to boolean
18 | 8 10 | 16 2 assign boolean to scalar
18 | 8 10 | 16 2 assign FALSE to scalar
18 | 8 10 | 16 2 assign TRUE to scalar
1 | 1 | 1 assign result of bitwise shift operator to
| | boolean
1 | 1 | 1 assign result of bitwise operator to boolean
1 | 1 | 1 assign result of arithmetic operator to
| | boolean
3 | 3 | 3 boolean/FALSE/TRUE operand of equality
| | operator
3 | 3 | 3 boolean/FALSE/TRUE operand of logical
| | operator
3 | 3 | 3 boolean/FALSE/TRUE operand of relational
| | operator
3 | 3 | 3 boolean/FALSE/TRUE operand of bitwise shift
| | operator
3 | 3 | 3 boolean/FALSE/TRUE operand of bitwise
| | operator
3 | 3 | 3 boolean/FALSE/TRUE operand of arithmetic
| | operator
2 | 2 | 2 FALSE/TRUE as modifiable l-values
2 | 2 | 2 FALSE/TRUE as l-values
==== ==== | ==== ==== | ==== ====
110 23 74 59 114 59