Expand palloc/pg_malloc API for more type safety This adds additional variants of palloc, pg_malloc, etc. that encapsulate common usage patterns and provide more type safety.
Specifically, this adds palloc_object(), palloc_array(), and repalloc_array(), which take the type name of the object to be allocated as its first argument and cast the return as a pointer to that type. There are also palloc0_object() and palloc0_array() variants for initializing with zero, and pg_malloc_*() variants of all of the above. Inspired by the talloc library. Reviewed-by: Tom Lane <t...@sss.pgh.pa.us> Discussion: https://www.postgresql.org/message-id/flat/bb755632-2a43-d523-36f8-a1e7a389a...@enterprisedb.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/2016055a92f26d648aba9f66d26cc0bcd1619eff Modified Files -------------- src/include/common/fe_memutils.h | 28 ++++++++++++++++++++++++++++ src/include/utils/palloc.h | 22 ++++++++++++++++++++++ 2 files changed, 50 insertions(+)