On Wed, Nov 07, 2007 at 02:44:23PM -0500, Tom Lane wrote:

> I don't have access to a machine on which the failure occurs, but
> perhaps Martin can try it.  I'd think it'd be pretty easy, say

> #include <stdio.h>
> #include <stdlib.h>

> void
> ereport(const char *msg)
> {
>       fprintf(stderr, "%s\n", msg);
>       exit(0);
> }
> 
> int
> main(int argc, char **argv)
> {
>       int     arg1 = atoi(argv[1]);
>       int     arg2 = atoi(argv[2]);
>       int     result;
> 
>       if (arg2 == 0)
>               ereport("division by zero");
> 
>       result = arg1 / arg2;
> 
>       printf("%d\n", result);
> 
>       return 0;
> }

> cc -g -O2 -fPIC -fno-strict-aliasing -mieee -D_GNU_SOURCE bug.c
> ./a.out 1 0

> I would not be surprised at all if it's compile-switch dependent; these
> look to be the switches Martin tested with.

So strangely, when I first ran this test case I recall being able to
reproduce the SIGFPE; but now going back to it I'm getting the correct
"division by zero" output.

But postgresql still fails to build with the same errors as before.

FWIW, the first test suite failure involving floor() has been resolved now
in the glibc package in unstable.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
[EMAIL PROTECTED]                                   http://www.debian.org/


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to