-
- Downloads
Use FLEXIBLE_ARRAY_MEMBER in a bunch more places.
Replace some bogus "x[1]" declarations with "x[FLEXIBLE_ARRAY_MEMBER]". Aside from being more self-documenting, this should help prevent bogus warnings from static code analyzers and perhaps compiler misoptimizations. This patch is just a down payment on eliminating the whole problem, but it gets rid of a lot of easy-to-fix cases. Note that the main problem with doing this is that one must no longer rely on computing sizeof(the containing struct), since the result would be compiler-dependent. Instead use offsetof(struct, lastfield). Autoconf also warns against spelling that offsetof(struct, lastfield[0]). Michael Paquier, review and additional fixes by me.
Showing
- contrib/cube/cubedata.h 7 additions, 8 deletionscontrib/cube/cubedata.h
- contrib/intarray/_int.h 2 additions, 2 deletionscontrib/intarray/_int.h
- contrib/ltree/ltree.h 7 additions, 7 deletionscontrib/ltree/ltree.h
- contrib/pageinspect/rawpage.c 1 addition, 1 deletioncontrib/pageinspect/rawpage.c
- contrib/pg_trgm/trgm.h 1 addition, 1 deletioncontrib/pg_trgm/trgm.h
- src/backend/catalog/namespace.c 7 additions, 6 deletionssrc/backend/catalog/namespace.c
- src/backend/commands/prepare.c 2 additions, 3 deletionssrc/backend/commands/prepare.c
- src/backend/executor/functions.c 3 additions, 3 deletionssrc/backend/executor/functions.c
- src/backend/executor/spi.c 2 additions, 3 deletionssrc/backend/executor/spi.c
- src/backend/nodes/params.c 2 additions, 3 deletionssrc/backend/nodes/params.c
- src/backend/postmaster/syslogger.c 2 additions, 2 deletionssrc/backend/postmaster/syslogger.c
- src/backend/tcop/postgres.c 2 additions, 3 deletionssrc/backend/tcop/postgres.c
- src/backend/utils/adt/geo_ops.c 11 additions, 11 deletionssrc/backend/utils/adt/geo_ops.c
- src/backend/utils/cache/catcache.c 1 addition, 1 deletionsrc/backend/utils/cache/catcache.c
- src/bin/pg_dump/dumputils.c 1 addition, 2 deletionssrc/bin/pg_dump/dumputils.c
- src/bin/pg_dump/dumputils.h 1 addition, 1 deletionsrc/bin/pg_dump/dumputils.h
- src/include/access/gin_private.h 2 additions, 2 deletionssrc/include/access/gin_private.h
- src/include/access/gist_private.h 4 additions, 3 deletionssrc/include/access/gist_private.h
- src/include/access/heapam_xlog.h 1 addition, 1 deletionsrc/include/access/heapam_xlog.h
- src/include/access/spgist_private.h 5 additions, 5 deletionssrc/include/access/spgist_private.h
Loading
Please register or sign in to comment