aboutsummaryrefslogtreecommitdiff
path: root/src/backend/tcop/postgres.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2013-08-21 18:31:51 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2013-08-21 18:31:51 -0400
commite9e387a5b1dde0b738d712cffe16c962e87b0094 (patch)
treee8e9c964bed28b2b4bee4bf3a34f7466a47381ef /src/backend/tcop/postgres.c
parent8e0b7d2219ebd551d535a7b2e14751534126f474 (diff)
downloadpostgresql-e9e387a5b1dde0b738d712cffe16c962e87b0094.tar.gz
postgresql-e9e387a5b1dde0b738d712cffe16c962e87b0094.zip
Disable -faggressive-loop-optimizations in gcc 4.8+ for pre-9.2 branches.
With this optimization flag enabled, recent versions of gcc can generate incorrect code that assumes variable-length arrays (such as oidvector) are actually fixed-length because they're embedded in some larger struct. The known instance of this problem was fixed in 9.2 and up by commit 8137f2c32322c624e0431fac1621e8e9315202f9 and followon work, which hides actually-variable-length catalog fields from the compiler altogether. And we plan to gradually convert variable-length fields to official "flexible array member" notation over time, which should prevent this type of bug from reappearing as gcc gets smarter. We're not going to try to back-port those changes into older branches, though, so apply this band-aid instead. Andres Freund
Diffstat (limited to 'src/backend/tcop/postgres.c')
0 files changed, 0 insertions, 0 deletions