Make <assert.h> consistently available in frontend and backend
authorPeter Eisentraut <peter@eisentraut.org>
Thu, 11 Dec 2025 08:19:17 +0000 (09:19 +0100)
committerPeter Eisentraut <peter@eisentraut.org>
Thu, 11 Dec 2025 08:56:57 +0000 (09:56 +0100)
commit795e94c70cf13f60b2cb4010f29a1bca542d2031
tree72484fa246f684234c1fc87ae5a36f8fde518020
parent4f7dacc5b82af19788599671abe4ac633fd7ea4c
Make <assert.h> consistently available in frontend and backend

Previously, c.h made <assert.h> only available in frontends (#ifdef
FRONTEND), which was probably reasonable, because the only thing it
would give you is assert(), which you generally shouldn't use in the
backend.  But with C11, <assert.h> also makes available
static_assert(), which would be useful everywhere.  So this patch
moves <assert.h> to the commonly available header files in c.h and
fixes a small complication in regcustom.h that resulted from that.

Co-authored-by: Thomas Munro <thomas.munro@gmail.com>
Discussion: https://www.postgresql.org/message-id/flat/CA%2BhUKGKvr0x_oGmQTUkx%3DODgSksT2EtgCA6LmGx_jQFG%3DsDUpg%40mail.gmail.com
src/include/c.h
src/include/regex/regcustom.h