Peter Eisentraut <peter.eisentr...@2ndquadrant.com> writes: > On 4/5/17 12:04, Tom Lane wrote: >> Conclusion: Fedora's gcc is playing fast and loose somehow with the >> command "#include <stdbool.h>"; that does not include the file >> you'd think it does, it does something magic inside the compiler. >> The magic evidently includes not complaining about duplicate macro >> definitions for true and false.
> Perhaps -Wsystem-headers would change the outcome in your case. Hah, you're right: with that, In file included from /usr/include/selinux/label.h:9:0, from label.c:40: /usr/lib/gcc/x86_64-redhat-linux/6.3.1/include/stdbool.h:34:0: warning: "true" redefined #define true 1 In file included from ../../src/include/postgres.h:47:0, from label.c:11: ../../src/include/c.h:206:0: note: this is the location of the previous definition #define true ((bool) 1) and likewise for "false". So that mystery is explained. I stand by my previous patch suggestion, except that we can replace the parenthetical comment with something like "(We don't care if <stdbool.h> redefines "true"/"false"; those are close enough.)". regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers