Table 3B Results of Version 3 compiled as C++



pass  fail  test
====  ====  ====
  1         boolean default constructor
  1         boolean copy constructor
  2         boolean constructor accepting FALSE/TRUE
  3         boolean aggregate initialized with
            boolean/FALSE/TRUE
  1         overload operator on boolean
  3         assign boolean/FALSE/TRUE to boolean
        1   assign result of equality operator to boolean
        1   assign result of logical operator to boolean
        1   assign result of relational operator to boolean
  3         boolean/FALSE/TRUE both operands of equality operator
  3         boolean/FALSE/TRUE both operands of logical operator
  3         boolean/FALSE/TRUE conditional expression
  3         boolean/FALSE/TRUE controlling expression of
            'if' statement
  2         FALSE/TRUE case label
        3   non-boolean aggregate initialized with
            boolean/FALSE/TRUE
  1         boolean initialized with non-boolean
        2   FALSE/TRUE enumerator initializer
  1     1   FALSE/TRUE array dimension
  18        assign scalar to boolean
  5    13   assign boolean to scalar
  5    13   assign FALSE to scalar
  5    13   assign TRUE to scalar
  1         assign result of bitwise shift operator to boolean
  1         assign result of bitwise operator to boolean
  1         assign result of arithmetic operator to
            boolean
        3   boolean/FALSE/TRUE operand of equality operator
        3   boolean/FALSE/TRUE operand of logical operator
        3   boolean/FALSE/TRUE operand of relational operator
        3   boolean/FALSE/TRUE operand of bitwise shift operator
        3   boolean/FALSE/TRUE operand of bitwise operator
        3   boolean/FALSE/TRUE operand of arithmetic operator
  2         FALSE/TRUE as modifiable lvalues
  2         FALSE/TRUE as lvalues
====  ====  =====
 67    66   TOTAL