When simple or negated simple conditions are combined in a consecutive sequence, the relation conditions may be abbreviated. You can do this by either:
The format for an abbreviated combined relation condition is:
condition { {AND} [NOT] [relation] object } ... {OR }
Within a sequence of relation conditions, both of the above forms of abbreviation may be used. When you use such abbreviations, it is as if the last preceding stated subject were inserted in place of the omitted subject, and the last stated relational operator were inserted in place of the omitted relational operator. The insertion of an omitted subject or relational operator terminates once a complete simple condition is encountered within a complex condition. Except for the source of the initial relation condition, no parentheses may appear in the sequence of abbreviated conditions.
If the word NOT is used in an abbreviated combined relation condition, it has the following meaning:
The following are examples of abbreviated combined relation conditions and their expanded equivalents:
A > B AND NOT < C (A > B) AND (A NOT < C) (A > B AND NOT < C) (A > B) AND (A NOT < C) A NOT = B OR C (A NOT = B) OR (A NOT = C) NOT A = B OR C (NOT (A = B)) OR (A = C) NOT (A > B OR < C) NOT ((A > B) OR (A < C))
With --newARC compiler option,the syntax rules for Abbreviated Combined Relation conditions become relaxed to allow for parenthesis to appear immediately after the relation.
For example:
IF A = (B OR C OR D)
would now be accepted by the compiler.