static-if-inline
Alvaro Herrera <alvherre@2ndquadrant.com>
From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2012-10-08T15:52:11Z
Lists: pgsql-hackers
Attachments
- static-if-inline.patch (text/x-diff) patch
The ilist patch from Andres Freund introduces a cute trick for defining maybe-inline functions, which works regardless of whether the compiler supports inlining, and eliminates the need to write the code twice (first in the header and also the .c file.) It's really quite a simple thing, but the whole topic on inlining has generated a lot of debate. So to remove that controversy out of said patch, here's a preliminary one: get rid of duplicate definitions in sortsupport.c, list.c, mcxt.c (which are currently defined as static inline in their respective headers for compilers that support it, and as regular functions in the .c files for those that don't). What's being done in this patch is exactly what would be done in the ilist code. So if there are problems with this, please speak up. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services