Re: pgsql: Fix blatantly broken record_image_cmp() logic for pass-by-value

From: Kevin Grittner <kgrittn(at)ymail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "pgsql-committers(at)postgresql(dot)org" <pgsql-committers(at)postgresql(dot)org>
Subject: Re: pgsql: Fix blatantly broken record_image_cmp() logic for pass-by-value
Date: 2013-11-08 21:19:58
Message-ID: 1383945598.62616.YahooMailNeo@web162905.mail.bf1.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:

> That is a serious compiler bug which you should file with your
> distro forthwith.

I distilled it down to the simplest case I could find which failed
to produce the warning; attached. Do you agree that it is a
compiler bug that this generates no warning?

Compile lines used:

gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith
-Wdeclaration-after-statement -Wendif-labels
-Wmissing-format-attribute -Wformat-security -fno-strict-aliasing
-fwrapv -fexcess-precision=standard -g -D_GNU_SOURCE -c -o
warning_test.o warning_test.c -MMD -MP

clang -O2 -Wall -Wmissing-prototypes -Wpointer-arith
-Wdeclaration-after-statement -Wendif-labels
-Wmissing-format-attribute -Wformat-security -fno-strict-aliasing
-fwrapv -g -D_GNU_SOURCE -c -o warning_test.o warning_test.c -MMD
-MP

It is probably significant that if I simplify the while loop
condition to just use one variable I do get the warning.

> It definitely does show up with what I'm using:
>         gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)

The warning shows up, or the bug does?

> It might be worth trawling the buildfarm records to see which
> compilers did or didn't warn before.

I'll get this filed first with the version I'm using, then look
around to see if there is anything else to report.

--
Kevin Grittner
EDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

Attachment Content-Type Size
test_warnings.c text/x-csrc 289 bytes

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Kevin Grittner 2013-11-08 22:33:50 Re: pgsql: Fix blatantly broken record_image_cmp() logic for pass-by-value
Previous Message Heikki Linnakangas 2013-11-08 20:29:17 pgsql: Fix race condition in GIN posting tree page deletion.

Browse pgsql-hackers by date

  From Date Subject
Next Message Joshua D. Drake 2013-11-08 21:42:56 Re: backup.sgml-cmd-v003.patch
Previous Message Noah Misch 2013-11-08 21:13:43 Re: ERROR during end-of-xact/FATAL