Exclude fmgrprotos.h from pgindent processing.
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 22 Sep 2020 15:32:10 +0000 (11:32 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 22 Sep 2020 15:32:10 +0000 (11:32 -0400)
pgindent messes up entries in this file if their names match
typedef names.  While there's reason to avoid choosing conflicting
names, we have some historical exceptions, and there's no guarantee
that more duplicates won't appear in future.  Since this is a derived
file anyway, there's little harm in just excluding it.

I said yesterday that all our derived files are pgindent-clean, or else
explicitly excluded from indentation, but I'd forgotten about this one.
Now that project is really done, as confirmed by a test run.

Discussion: https://postgr.es/m/79ed5348-be7a-b647-dd40-742207186a22@2ndquadrant.com

src/tools/pgindent/README
src/tools/pgindent/exclude_file_patterns

index 56f07c7ee4cdd051457d8a8cb8a182970035e8a6..d36f5088279c40e5b2aa3d13363454043fd24b2a 100644 (file)
@@ -101,6 +101,10 @@ the comment block with some dashes:
 
 Odd spacing around typedef names might indicate an incomplete typedefs list.
 
+pgindent will mangle both declaration and definition of a C function whose
+name matches a typedef.  Currently the best workaround is to choose
+non-conflicting names.
+
 pgindent can get confused by #if sequences that look correct to the compiler
 but have mismatched braces/parentheses when considered as a whole.  Usually
 that looks pretty unreadable to humans too, so best practice is to rearrange
index b2e9d8f654780c2b25e8c11e44a80f292dea75c1..bfe103f1955a910b6337dbb79d7ee6e51f5cd254 100644 (file)
@@ -10,6 +10,10 @@ src/include/jit/llvmjit\.h$
 # This confuses pgindent, and it's a derived file anyway.
 src/backend/utils/fmgrtab\.c$
 #
+# pgindent might mangle entries in this that match typedef names.
+# Since it's a derived file anyway, just exclude it.
+src/backend/utils/fmgrprotos\.h$
+#
 # kwlist_d files are made by gen_keywordlist.pl.  While we could insist that
 # they match pgindent style, they'd look worse not better, so exclude them.
 kwlist_d\.h$
@@ -35,3 +39,5 @@ src/pl/plperl/Util\.c$
 # Exclude any temporary installations that may be in the tree.
 /tmp_check/
 /tmp_install/
+# ... and for paranoia's sake, don't touch git stuff.
+/\.git/