mirror of https://github.com/postgres/postgres
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 commitREL8_2_STABLE8137f2c323
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 This is a backpatch of commit649839dd9
to unsupported branches REL8_2_STABLE and REL8_3_STABLE, so that they work with newer toolsets.
parent
91a1e14899
commit
105f3ef492
Loading…
Reference in new issue