Re: compile warning
От | Alvaro Herrera |
---|---|
Тема | Re: compile warning |
Дата | |
Msg-id | 20031010043731.GA24655@dcc.uchile.cl обсуждение исходный текст |
Ответ на | Re: compile warning (Bruce Momjian <pgman@candle.pha.pa.us>) |
Ответы |
Re: compile warning
|
Список | pgsql-hackers |
On Thu, Oct 09, 2003 at 11:51:09PM -0400, Bruce Momjian wrote: > Alvaro Herrera wrote: > > I'm seeing this compile warning on today's CVS tip: > > > > $ make src/backend/commands/tablecmds.o > > gcc -O2 -g -Wall -Wmissing-prototypes -Wmissing-declarations -I./src/include -D_GNU_SOURCE -c -o src/backend/commands/tablecmds.osrc/backend/commands/tablecmds.c > > src/backend/commands/tablecmds.c: In function `validateForeignKeyConstraint': > > src/backend/commands/tablecmds.c:3528: warning: dereferencing type-punned pointer will break strict-aliasing rules > > If you change the offending line to: > > fcinfo.context = (struct Node *) &trigdata; > > I know it shouldn't make a difference, but it is worth a try. Nope, same warning. I don't know what it means though. I tried some other things to correct it, but I can't find exactly what it's complaining about. What is a "type-punned pointer"? Looking in Google finds this thread first: http://www.mail-archive.com/freebsd-current@freebsd.org/msg58957.html which is full of a very ugly kernel macro (I'm happy to stay away from that): http://www.mail-archive.com/freebsd-current@freebsd.org/msg58957.html This other guy actually posted an useful excerpt from the GCC manpage: http://www.ethereal.com/lists/ethereal-dev/200309/msg00342.html So, I still don't understand what's the noise about. However I think there's no way to silence the warning without uglifying the structs a lot by means of some union. -- Alvaro Herrera (<alvherre[a]dcc.uchile.cl>) "I would rather have GNU than GNOT." (ccchips, lwn.net/Articles/37595/)
В списке pgsql-hackers по дате отправления: