From: Frank Heckenbach frank@g-n-u.de To: gpc@gnu.de Subject: Re: Date: Tue, 4 Jul 2000 19:33:48 +0200
Here is the routine which is involved:
function travel(djk:real;md:mat;A:minitable;Ak:real;ns,j:integer):real; {probability of an individual leaving patch j to reach patch k} const alpha = 4.910; zim = 0.263; lambda = 0.175; var Sj,t : real; begin Sj:=connect(md,A,ns,j); t:=(exp(-alpha*djk)*pow2(Ak,zim))/((lambda/Sj)+Sj); travel:=t; end;
This is exactly the same GPC bug that Clyde Meli has just reported. As I wrote last night, this bug has been fixed meanwhile. According to the `Fixed Bugs' section in the To-Do list http://agnes.dida.physik.uni-essen.de/~gnu-pascal/todo.html:
20000503: Sparc: division by reals (fjf237.pas, matt1.pas) or `Round (real_constant)' (chaput1.pas) make the compiler crash <199911040915.KAA11168@@humulus.daimi.au.dk>
(Sparc is the processor used in Sun's machines.)
Until there is a new GPC release with this bug fixed, you can work around by type-casting the constants to Real:
const alpha = Real (4.910); zim = Real (0.263); lambda = Real (0.175);
Ok, but I need these true values, so?...
Nathalie ________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com