On Sat, 11 Jan 2025 at 11:27, Andrew Kane <and...@ankane.org> wrote: > Prior to 6f3820f, extensions could be compiled with -DUSE_ASSERT_CHECKING > whether or not the Postgres installation was configured with --enable-cassert > (to enable at least some assertion checking). However, after 6f3820f, linking > fails with `undefined symbol: verify_compact_attribute`. I'm not sure if this > use case is officially supported, but it has been helpful for developing > pgvector. > > The attached patch fixes it, but there may be a better way to do this.
hmm, I didn't think of that scenario. I think since verify_compact_attribute() does nothing when USE_ASSERT_CHECKING isn't defined that we might as well define a ((void) 0) macro to avoid the undefined symbol error. That'll avoid the useless call in your debug builds. I looked around for inspiration and that's what pgstat_assert_is_up() does. Most of the other examples are static functions. David
fix_verify_compact_attribute.patch
Description: Binary data