Date: Wed, 15 Apr 1998 10:12:53 +1000 From: Craig Wilson <craig@natsoft.com.au> To: Eivind Eklund <eivind@FreeBSD.ORG> Cc: ajhar@noao.edu, freebsd-bugs@FreeBSD.ORG Subject: Re: i386/3895 Message-ID: <3533FB85.72B3@natsoft.com.au> References: <199804142326.QAA14665@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Eivind Eklund wrote:
>
> Synopsis: False FPE (floating point exception) signaled
>
> State-Changed-From-To: open-closed
> State-Changed-By: eivind
> State-Changed-When: Tue Apr 14 16:25:04 PDT 1998
> State-Changed-Why:
> We don't have any reproducable case, and we're not likely to get any.
> The submitter is no longer bothered by the problem.
>
I have had this problem with the SCO Xenix C compiler.
It is reproducable with the C compiler in FreeBSD 2.2.2
It will happen when a routine which returns a float is not
properly defined in another source file that uses that routine.
Adding "double getdouble();" prototype in float.c fixes the problem.
float.c
main()
{
int i;
double iD;
i=0;
lp: iD=getdouble();
i++;
printf("i=%d\n\r",i);
goto lp;
}
float1.c
double getdouble()
{
double iD;
iD=1;
return iD;
}
cc float.c float1.c -ofloat
This program will perform 7 loops before crashing with a FPE.
I hope this info helps.
Craig Wilson
National Software Pty Ltd
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3533FB85.72B3>
