Andres Freund <and...@anarazel.de> writes: > On 2016-04-13 23:31:21 -0700, Andres Freund wrote: >> I'm also putting up an animal with clang that uses >> CFLAGS='-std=c89 -Wc99-extensions -Werror=c99-extensions' >> which actually catches this.
> Hm. Doing so I found the following in 9.3: > /home/andres/src/postgresql-9.3/src/bin/pg_dump/parallel.c:561:23: error: > initializer for aggregate is not a compile-time constant > [-Werror,-Wc99-extensions] > int pipefd[2] = > {pipeMW[PIPE_READ], pipeWM[PIPE_WRITE]}; > ^~~~~~~~~~~~~~~~~ > which is, afaics, the same class of issue we're hitting on master right > now. I apparently fixed that, via Robert, back in 59202fae0. I'd planned > to put up that animal (mylodon) for all branches, but given that that's > been unfixed for years I'm not sure. What do you think? Huh. I just tried pademelon's compiler on the 9.3 branch, and sure enough it spits up on that: cc: "parallel.c", line 561: error 1521: Incorrect initialization. cc: "parallel.c", line 561: error 1521: Incorrect initialization. make: *** [parallel.o] Error 1 I am not sure how come I missed seeing that at the time, but I certainly would have complained about it if I had chanced to try that compiler later in 9.3 development. I stopped using that machine actively in mid-2013, though, so maybe I just failed to try that compiler for a period of a few months. IIRC, when I got around to setting up pademelon as a buildfarm animal, I didn't have it building anything older than 9.4, so I missed seeing it on that end too. I'd vote for back-patching 59202fae0 and enforcing c89 compatibility all along the line. 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