Informix 4GL 4.0 on ISC 2.2.1 BUGGG
Posted in 1991
Path: emory!swrinde!cs.utexas.edu!utgpu!attcan!telly!comspec!tvcent!lethe!torsqnt!snitor!modtor!peter
From: peter@modtor.uucp (Peter Ziobrzynski)
Newsgroups: comp.databases,comp.unix.sysv386
Message-ID: <1991Jul11.042653.21016@modtor.uucp>
Date: 11 Jul 91 04:26:53 GMT
Organization: MODULAR
Hi People!
Anybody using Informix-4GL 4.00.UE1 on ISC 2.2.1 or SCO ?NIX ?
If you don't and plan to do it ($2000+) LOOK at the following fatal BUG :-((.
Any attempt to use QBE (query by example) is doomed on failure in this product.
If you put anything in the last field of your form and execute CONSTRUCT
the program dumps core. I think that something like 90% of all i4GL applications
used to use (good old days) this technic to get anything done.
All Informix supplied demo 4GL programs using CONSTRUCT dump core - to save
your time I include here a super short example that does it.
(Anybody at Informix Software Inc. tuned to this frequency - PLEASE respond.)
A program to create a simple database - create.4gl:
>main
> create database test
> create table testtable ( f1 integer, f2 integer )
>end main
Test program trying to use CONSTRUCT to build a string with a part of SQL
query - test.4gl:
>database test
>main
> define s char(80)
> open window w1 at 2,2 with form "test"
> construct s on f1, f2 from testtable.*
> message "s:", s clipped
> sleep 3
>end main
Form file - test.per:
>database test
>screen
>{
> f1 [f001 ] f2 [f002 ]
>}
>end
>tables
> testtable
>attributes
>f001 = testtable.f1;
>f002 = testtable.f2;
>end
To build it use:
>$ c4gl -o create create.4gl
>$ create
>$ form4gl test
>$ c4gl -o test test.4gl
Let's run it:
$ test
A form screen is displayed and I put '11' in the last field:
> f1 [ ] f2 [11 ]
after return test program dumps core:
> s:f2="01"Memory fault
The sdb stack back trace:
>$ sdb test core
>*t
>malloc(0x500) [malloc.c]
>pushptr() [fglstack.c]
>pushint(3) [fglstack.c]
>main(1,0x7ffffdb4,0x7ffffdbc) [test.c]
--
Peter Ziobrzynski, peter@{modtor,nixtdc,snitor}.UUCP
Toronto, Ont. +1 (416) {H:625-1684, W:496-8510, Fax:496-8524}