Обсуждение: Fw: [COMMITTERS] pgsql: Fix blatantly broken record_image_cmp() logic for pass-by-value
Fw: [COMMITTERS] pgsql: Fix blatantly broken record_image_cmp() logic for pass-by-value
От
Kevin Grittner
Дата:
Forwarding to -hackers. ----- Forwarded Message ----- > From: Kevin Grittner <kgrittn@ymail.com> > To: Tom Lane <tgl@sss.pgh.pa.us> > Cc: "pgsql-committers@postgresql.org" <pgsql-committers@postgresql.org> > Sent: Friday, November 8, 2013 3:19 PM > Subject: Re: [COMMITTERS] pgsql: Fix blatantly broken record_image_cmp() logic for pass-by-value > > Tom Lane <tgl@sss.pgh.pa.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 >
Вложения
Re: Fw: [COMMITTERS] pgsql: Fix blatantly broken record_image_cmp() logic for pass-by-value
От
Kevin Grittner
Дата:
Kevin Grittner <kgrittn@ymail.com> wrote: >> 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? >> 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 The actual test case I sent for gcc is what is attached here. Sorry for attaching the wrong file before. -- Kevin Grittner EDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company