Next: Built-In Func/Proc, Up: Modula-2 [Contents][Index]
Operators must be defined on values of specific types.  For instance,
+ is defined on numbers, but not on structures.  Operators are
often defined on groups of types.  For the purposes of Modula-2, the
following definitions hold:
INTEGER, CARDINAL, and
their subranges.
CHAR and its subranges.
REAL.
POINTER TO
type.
SET and BITSET types.
BOOLEAN.
The following operators are supported, and appear in order of increasing precedence:
,Function argument or array index separator.
:=Assignment.  The value of var := value is
value.
<, >Less than, greater than on integral, floating-point, or enumerated types.
<=, >=Less than or equal to, greater than or equal to
on integral, floating-point and enumerated types, or set inclusion on
set types.  Same precedence as <.
=, <>, #Equality and two ways of expressing inequality, valid on scalar types.
Same precedence as <.  In GDB scripts, only <> is
available for inequality, since # conflicts with the script
comment character.
INSet membership.  Defined on set types and the types of their members.
Same precedence as <.
ORBoolean disjunction. Defined on boolean types.
AND, &Boolean conjunction. Defined on boolean types.
@The GDB “artificial array” operator (see Expressions).
+, -Addition and subtraction on integral and floating-point types, or union and difference on set types.
*Multiplication on integral and floating-point types, or set intersection on set types.
/Division on floating-point types, or symmetric set difference on set
types.  Same precedence as *.
DIV, MODInteger division and remainder.  Defined on integral types.  Same
precedence as *.
-Negative.  Defined on INTEGER and REAL data.
^Pointer dereferencing. Defined on pointer types.
NOTBoolean negation.  Defined on boolean types.  Same precedence as
^.
.RECORD field selector.  Defined on RECORD data.  Same
precedence as ^.
[]Array indexing.  Defined on ARRAY data.  Same precedence as ^.
()Procedure argument list.  Defined on PROCEDURE objects.  Same precedence
as ^.
::, .GDB and Modula-2 scope operators.
Warning: Set expressions and their operations are not yet supported, so GDB treats the use of the operator
IN, or the use of operators+,-,*,/,=, ,<>,#,<=, and>=on sets as an error.
Next: Built-In Func/Proc, Up: Modula-2 [Contents][Index]