Zdenek Kotala wrote: > Alvaro Herrera wrote: >> (Digging further, it seems like bufpage.h should also include transam.h >> in order to get TransactionIdIsNormal ... I start to wonder how many >> problems of this nature we have on our headers. Without having a way to >> detect whether the defined macros are valid, it seems hard to check >> programatically, however.) > > I attached script which should check it. In first step it runs C > preprocessor on each header (postgres.h is included as well). The output > from first step is processed again with preprocessor and define.h is > included. Define.h contains "all" used macros in following format: > > #define SIGABRT "NOT_EXPANDED_SIGABRT" > > Main problem is how to generate define.h. I used following magic: > > grep "^#define" `find . -name "*.h"` | cut -d" " -f 2 | cut -f 1 | cut -f 1 > -d"(" > > but it generates some noise as well. Maybe some Perl or AWK magic should be > better.
So were you able to detect anything bogus with this technique? -- Alvaro Herrera http://www.CommandPrompt.com/ The PostgreSQL Company - Command Prompt, Inc. -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers