×
The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.
On 14/05/2010, at 4:06 PM, David FOXWELL wrote:
Well, now I'm wondering about the value of using CONST at all. I
don't see that that's much protection against anything unless you
don't test. It seems we only really need it to indicate which
parameters are intended to be used as input only. The kind of
problem I've had without using CONST could be waiting to happen in
many other procedures.
Pah! The compiler can't protect you from stupidity. The problem was
caused entirely by you trying to stuff 9 pounds in a 7 pound bag and
not expecting it to overflow i.e., not paying attention to what you
were doing. Sure, without CONST or VALUE the compiler would have
caught the mismatch but consider the reverse situation where you might
want to pass a smaller value or a different data type or a literal; in
all these cases the compiler will assist you by verifying the base
data type (i.e., numeric vs. character vs. date) is correct and will
convert the actual type to the expected type. This makes the procedure
far more flexible and useful than forcing the consumer to define an
exactly matching data type.
Note that you would have received exactly the same error if you'd
tried an arithmetic EVAL that resulted in a value too large for the
variable e.g. small = EVAL some-bloody-huge-arithmetic-expression. Do
you expect the compiler to protect you from that situation too? Both
of these cases are run-time errors for which proper exception handling
can be implemented to at least catch and notify you of the problem.
Regards,
Simon Coulter.
--------------------------------------------------------------------
FlyByNight Software OS/400, i5/OS Technical Specialists
http://www.flybynight.com.au/
Phone: +61 2 6657 8251 Mobile: +61 0411 091 400 /"\
Fax: +61 2 6657 8251 \ /
X
ASCII Ribbon campaign against HTML E-Mail / \
--------------------------------------------------------------------
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact
[javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.