In commit b30d3ea824c5ccba43d3e942704f20686e7dbab8, when Andres added the simplehash stuff, he also added SH_TYPE, SH_ITERATOR, and SH_STATUS to typedefs.list. When I subsequently updated typedefs.list from the buildfarm in acddbe221b084956a0efd6e4b6c6586e8fd994d7, it of course removed those entries since they are merely placeholders for real types, not anything that would ever appear in a symbol table. So now if you pgindent the simplehash stuff, it does stupid things.
I think we should add a file src/tools/pgindent/typedefs.extra.list. Somehow teach pgindent to search whatever directory it searches for typedefs.list for typedefs.extra.list as well. Then we can put stuff in there that the buildfarm doesn't find, and pgindent can combine the files in load_typedefs(). That way we can still update typedefs.list straight from the buildfarm, but there's a place to put manual entries that we don't want to lose. We could also teach load_typedefs() to strip out lines that are empty or start with #, and then we'd be able to put comments in typedefs.extra.list explaining why each entry needs to be present there rather than relying on the normal mechanism. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (email@example.com) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers