Newsgroups: comp.lang.pascal Path: utzoo!utgpu!watserv1!maytag!watstat.waterloo.edu!dmurdoch From: dmurdoch@watstat.waterloo.edu (Duncan Murdoch) Subject: Re: Differencces betweenn TurboPascal 3.0 and 5.* Message-ID: <1990Nov14.142936.4626@maytag.waterloo.edu> Sender: daemon@maytag.waterloo.edu (Admin) Organization: University of Waterloo References: <1089@rcsw21.rcvie@tuvie.uucp> <1990Nov14.084349.13733@uwasa.fi> Date: Wed, 14 Nov 90 14:29:36 GMT Lines: 24 In article <1990Nov14.084349.13733@uwasa.fi> ts@uwasa.fi (Timo Salmi) writes: > Q: Should I upgrade my Turbo Pascal version? > > If you are currently using version 5.0 the only rational reason >to upgrade is needing objects. One other reason: there's a bug in the code generator for 4.0 and 5.0 that makes it handle the Extended (10 byte) real type poorly. The code generated makes very poor use of the 8 element internal stack on the coprocessor, so that expressions with lots of operands like e1+e2+e3+e4+e5+e6+e7+e8+e9 always fail, if all the e's are of type extended. (The generated code pushes each operand onto the stack, then does all the adds. It's smarter to push and add them one at a time.) This makes it a real pain translating numerical routines from Fortran, especially since constants are taken to be of type extended. The bug was fixed in 5.5. Duncan Murdoch