gdb.info: M2 Operators
Go forward to Built-In Func/Proc
Go up to Modula-2
Go to the top op gdb
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:
* _Integral types_ consist of `INTEGER', `CARDINAL', and their
* _Character types_ consist of `CHAR' and its subranges.
* _Floating-point types_ consist of `REAL'.
* _Pointer types_ consist of anything declared as `POINTER TO TYPE'.
* _Scalar types_ consist of all of the above.
* _Set types_ consist of `SET' and `BITSET' types.
* _Boolean types_ consist of `BOOLEAN'.
The following operators are supported, and appear in order of
Function argument or array index separator.
Assignment. The value of VAR `:=' VALUE is VALUE.
Less than, greater than on integral, floating-point, or enumerated
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
Set membership. Defined on set types and the types of their
members. Same precedence as `<'.
Boolean disjunction. Defined on boolean types.
Boolean conjunction. Defined on boolean types.
The GDB "artificial array" operator (*note 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 `*'.
Integer division and remainder. Defined on integral types. Same
precedence as `*'.
Negative. Defined on `INTEGER' and `REAL' data.
Pointer dereferencing. Defined on pointer types.
Boolean 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:_ Sets 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
Created Mon Nov 8 17:42:38 2004 on tillpc with info_to_html version 0.9.6.