Re: Broken C4GL in 4.10
Posted in 1994
>From: David Snyder <das@trac3000.ueci.com> >Subject: Broken C4GL in 4.10 >Date: Mon, 28 Feb 1994 12:34:10 -0500 (EST) >X-Informix-List-Id: <list.3590> >Using "c4gl"... >Would anyone be able to tell me why the following program works as >expected under > INFORMIX-4GL Version 4.00.UH1 >but not under > INFORMIX-4GL Version 4.10.UD3 >MAIN > DEFINE dummy_long INTEGER > > WHENEVER ERROR CONTINUE > > LET dummy_long = "Dave" > DISPLAY "STATUS=", STATUS >END MAIN Define "expected"! It actually behaves 'as expected' (meaning 'as intended') under both versions, but your expectations have to differ depending on which version you use. Under 4.12.UC1, it runs, generates an error message -1213, and then displays STATUS = 0. When the WHENEVER clause is modified to read: WHENEVER ANY ERROR CONTINUE it behaves differently -- the STATUS is set to -1213 and no error message is displayed. It's all down to the difference between 1.10.03 and 4.00 whereby the 4.00 version was made sensitive to almost every error, whereas 1.10.03 was not sensitive to many expression-based errors. In 4.1x, the 1.10.03 behaviour was re-instated as the default, and the 4.00 behaviour is available using the WHENEVER ANY ERROR version of the WHENEVER statement. Uggh! Yours, Jonathan Leffler (johnl@informix.com) #include <disclaimer.h>