Suggest the following word changes to this section for compatability with the wording
used in the other DataType edits.
The example in 7.17, defining the structure float, is significant as it allows
a wire float to be defined and passed through hierarchy with overloaded operators
to handle the cases of arithmetic with reals and with integral types. This overcomes
the limitation of real and shortreal not being included in the bit-stream types.
----------------------------------------------------------------------
Section 7.17 Operator overloading
CHANGE:
The overload declaration allows the arithmetic operators to be applied to data types that are normally illegal
for them, such as unpacked structures. It does not change the meaning of the operators for those types where it
is legal to apply them. This means that such code does not change behavior when operator overloading is used.
TO:
The overload declaration allows the arithmetic operators to be applied to data types that are normally illegal
for them, such as unpacked structures. It does not change the meaning of the operators for those data types where it
^^^^
is legal to apply them. This means that such code does not change behavior when operator overloading is used.
CHANGE:
The overload declaration links an operator to a function prototype. The arguments are matched, and the type of
the result is then checked. Multiple functions can have the same arguments and different return types. If no
expected type exists because the operator is in a self-determined context, then a cast must be used to select the
correct function. Similarly if more than one expected type is possible, due to nested operators, and could match
more than one function, a cast must be used to select the correct function.
TO:
The overload declaration links an operator to a function prototype. The arguments are matched, and the data type of
^^^^
the result is then checked. Multiple functions can have the same arguments and different return data types. If no
^^^^
expected data type exists because the operator is in a self-determined context, then a cast
^^^^
must be used to select the
correct function. Similarly if more than one expected data type is possible, due to nested
^^^^
operators, and could match
more than one function, a cast must be used to select the correct function.
CHANGE:
An expected result type exists in any of the following contexts:
TO:
An expected result data type exists in any of the following contexts:
^^^^
CHANGE:
The overloading declaration links the + operator to each function prototype according to the equivalent argument
types in the overloaded expression, which normally must match exactly. The exception is if the actual
argument is an integral type and there is only one prototype with a corresponding integral argument, the actual
is implicitly cast to the type in the prototype.
TO:
The overloading declaration links the + operator to each function prototype according to the equivalent argument
data types in the overloaded expression, which normally must match exactly. The exception is
^^^^
if the actual
argument is an integral type and there is only one prototype with a corresponding integral argument, the actual
is implicitly cast to the data type in the prototype.
^^^^
Received on Thu Nov 11 01:47:33 2004
This archive was generated by hypermail 2.1.8 : Thu Nov 11 2004 - 01:47:55 PST