[patch] test failure on sparc64 due to undefined division by zero behaviour

From: Martin Pitt <mpitt(at)debian(dot)org>
To: PostgreSQL Bugs <pgsql-bugs(at)postgresql(dot)org>
Cc: Aurelien Jarno <aurel32(at)debian(dot)org>, 616180(at)bugs(dot)debian(dot)org
Subject: [patch] test failure on sparc64 due to undefined division by zero behaviour
Date: 2011-03-11 17:47:10
Message-ID: 20110311174710.GF2541@piware.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hello PostgreSQL hackers,

I recently got the following bug report about a test suite failure on
sparc64:

----- Forwarded message from Aurelien Jarno <aurel32(at)debian(dot)org> -----

Date: Wed, 02 Mar 2011 23:49:05 +0100
From: Aurelien Jarno <aurel32(at)debian(dot)org>
To: Debian Bug Tracking System <submit(at)bugs(dot)debian(dot)org>
Subject: Bug#616180: postgresql-9.0: FTBFS on sparc64, testsuite issues with int8

postgresql-9.0 fails to build on sparc64 due to testsuite errors with
int8. The division by 0 is not trapped and a SIGFPE is issued instead of
an error.

Postgresql people claims it's a gcc bug, while gcc people says the code
is incorrect [1]. Whatever the real issue is, the fix is very simple
(actually taken in another part from the very same file), so it's
probably the best to simply apply it.

[1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29968

----- End forwarded message -----

The C99 standard [2], section 6.5.5 paragraph 5 actually says:

"The result of the / operator is the quotient from the division of
the first operand by the second; the result of the % operator is the
remainder. In both operations, if the value of the second operand is
zero, the behavior is undefined."

so the gcc folk's claim that this isn't a gcc bug looks justified.

Aurelien sent a straightforward patch for this, I updated it to apply
to current git head, updated the comments, and git-formatted it.

Thanks for considering!

Martin

[2] http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
--
Martin Pitt | http://www.piware.de
Ubuntu Developer (www.ubuntu.com) | Debian Developer (www.debian.org)

Attachment Content-Type Size
0001-Avoid-undefined-division-by-zero.patch text/x-diff 2.5 KB

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Pavel B. Milovantsev 2011-03-11 18:57:22 Collation problem right from AbstractJdbc2DatabaseMetaData.getTables
Previous Message Robert Haas 2011-03-11 16:30:25 Re: BUG #5814: documentation bug