]> granicus.if.org Git - postgresql/commitdiff
Fix recent problems with BSD indent, including indenting past 80
authorBruce Momjian <bruce@momjian.us>
Tue, 15 Nov 2005 00:43:01 +0000 (00:43 +0000)
committerBruce Momjian <bruce@momjian.us>
Tue, 15 Nov 2005 00:43:01 +0000 (00:43 +0000)
columns, shifting comment to the right when more than 150 'else if'
clauses were used, and update typedefs for 8.1.X.

NetBSD patched updated, with documentation.

src/tools/find_typedef
src/tools/pgindent/README
src/tools/pgindent/indent.bsd.patch
src/tools/pgindent/pgindent

index 5971a51583864222e875409eb76bec5e60bf810a..22239c659d08bdfcf0995588cb66e007da13588b 100755 (executable)
 # Remember, debugging symbols are your friends.
 #
 
-if [ "$#" -ne 1 -o ! -d "$1" ]
-then   echo "Usage:  $0 postgres_binary_directory" 1>&2
+if [ "$#" -eq 0 -o ! -d "$1" ]
+then   echo "Usage:  $0 postgres_binary_directory [...]" 1>&2
        exit 1
 fi
 
-objdump --stabs "$1"/* |
-grep "LSYM" |
-awk '{print $7}' |
-grep ':t' |
-sed 's/^\([^:]*\).*$/\1/' |
-grep -v ' ' | # some typedefs have spaces, remove them
+for DIR
+do
+       objdump --stabs "$DIR"/* |
+       grep "LSYM" |
+       awk '{print $7}' |
+       grep ':t' |
+       sed 's/^\([^:]*\).*$/\1/' |
+       grep -v ' ' # some typedefs have spaces, remove them
+done |
 sort |
-uniq
+uniq |
+sed 's/\(.*\)/-T\1 \\/'
index a4cd2fc2fcfc996825a328a052112a04a900d603..3a6a52ace43dda4f19befd1270476905c42f2fac 100644 (file)
@@ -1,10 +1,10 @@
 This can format all PostgreSQL *.c and *.h files, but excludes *.y, and *.l
 files.
 
-Get the list of typedef's included in pgindent by running this on the
-pgsql/bin and pgsql/lib directories:
+To use it, first get the list of typedef's to be included in pgindent by
+running this on the pgsql/bin and pgsql/lib directories:
 
-       /src/tools/find_typedef /usr/local/pgsql/bin /usr/local/pgsql/lib
+       src/tools/find_typedef /usr/local/pgsql/bin /usr/local/pgsql/lib
 
 and update the list in pgindent.  This requires the binaries have debug 
 symbols.
@@ -13,20 +13,12 @@ From the top directory, run:
 
   find . -name '*.[ch]' -type f -print | grep -v 's_lock.h' | xargs -n100 pgindent
 
-The stock BSD indent has two bugs.  First, a comment after the word 'else'
-causes the rest of the file to be ignored.  Second, it silently ignores
-typedefs after getting the first 100.
-
-Both problems are worked-around in this script.  We also include a patch
-for the second bug in:
-
-       /src/tools/pgindent/indent.bsd.patch
-
-Even with the workaround, installation of the patch produces better
-output.  You can get a patched BSD indent from ftp://ftp.postgresql.org/pub/dev.
+We have standardized on NetBSD's indent.  We have fixed a few bugs which 
+requre the NetBSD source to be patched with indent.bsd.patch patch.  A 
+fully patched  version is available at ftp://ftp.postgresql.org/pub/dev.
 
 GNU indent, version 2.2.6, has several problems, and is not recommended.
-These bugs become pretty major when you are doing >400k lines of code.
+These bugs become pretty major when you are doing >500k lines of code.
 If you don't believe me, take a directory and make a copy.  Run pgindent
 on the copy using GNU indent, and do a diff -r. You will see what I
 mean. GNU indent does some things better, but mangles too.
index 231ec2e8d0e745aa2f36489bd92583423e987d82..bb1ba73f77212babb8f9641fee2fdd6b917b4995 100644 (file)
 
-This increases the number of typedef's understood by BSD indent from 100
-to 4096.  The second patch allows it to understand 0x7fU and 0LL constants.
+This patch contains several fixes to NetBSD's indent and should be
+applied before using pgindent.
 
 ---------------------------------------------------------------------------
 
-*** ./lexi.c.orig      Mon Sep  8 17:55:47 1997
---- ./lexi.c   Mon Sep  8 17:02:10 1997
+Index: README
+===================================================================
+RCS file: /cvsroot/src/usr.bin/indent/README,v
+retrieving revision 1.1
+diff -c -r1.1 README
+*** README     9 Apr 1993 12:59:06 -0000       1.1
+--- README     15 Nov 2005 00:25:43 -0000
 ***************
-*** 58,64 ****
-      int         rwcode;
+*** 1,3 ****
+--- 1,13 ----
++ 
++ This patch is from NetBSD current, 2005-11-14.  It contains all the
++ patches need for its use in PostgreSQL.
++ 
++ bjm
++ 
++ ---------------------------------------------------------------------------
++ 
++ 
++ 
+  This is the C indenter, it originally came from the University of Illinois
+  via some distribution tape for PDP-11 Unix.  It has subsequently been
+  hacked upon by James Gosling @ CMU.  It isn't very pretty, and really needs
+Index: indent_globs.h
+===================================================================
+RCS file: /cvsroot/src/usr.bin/indent/indent_globs.h,v
+retrieving revision 1.8
+diff -c -r1.8 indent_globs.h
+*** indent_globs.h     7 Aug 2003 11:14:08 -0000       1.8
+--- indent_globs.h     15 Nov 2005 00:25:44 -0000
+***************
+*** 239,245 ****
+          scomf,                       /* Same line comment font */
+          bodyf;                       /* major body font */
+  
+! #define STACK_SIZE 150
+  
+  EXTERN struct parser_state {
+       int     last_token;
+--- 239,249 ----
+          scomf,                       /* Same line comment font */
+          bodyf;                       /* major body font */
+  
+! /*
+!  * This controls the maximum number of 'else if' clauses supported.
+!  * If it is exceeded, comments are placed in column 100.
+!  */
+! #define STACK_SIZE 1000
+  
+  EXTERN struct parser_state {
+       int     last_token;
+Index: lexi.c
+===================================================================
+RCS file: /cvsroot/src/usr.bin/indent/lexi.c,v
+retrieving revision 1.12
+diff -c -r1.12 lexi.c
+*** lexi.c     7 Aug 2003 11:14:09 -0000       1.12
+--- lexi.c     15 Nov 2005 00:25:44 -0000
+***************
+*** 93,99 ****
+       int     rwcode;
   };
   
-! struct templ specials[100] =
+! struct templ specials[1000] =
   {
-      "switch", 1,
-      "case", 2,
---- 58,64 ----
-      int         rwcode;
+       {"switch", 1},
+       {"case", 2},
+--- 93,99 ----
+       int     rwcode;
   };
   
-! struct templ specials[4096] =
+! struct templ specials[16384] =
   {
-      "switch", 1,
-      "case", 2,
+       {"switch", 1},
+       {"case", 2},
+***************
+*** 622,629 ****
+               else
+                       p++;
+       if (p >= specials + sizeof specials / sizeof specials[0])
+!              return;         /* For now, table overflows are silently
+!                               * ignored */
+       p->rwd = key;
+       p->rwcode = val;
+       p[1].rwd = 0;
+--- 622,632 ----
+               else
+                       p++;
+       if (p >= specials + sizeof specials / sizeof specials[0])
+!      {
+!              fprintf(stderr, "indent: typedef table overflow\n");
+!              exit(1);
+!      }
+! 
+       p->rwd = key;
+       p->rwcode = val;
+       p[1].rwd = 0;
+Index: parse.c
+===================================================================
+RCS file: /cvsroot/src/usr.bin/indent/parse.c,v
+retrieving revision 1.7
+diff -c -r1.7 parse.c
+*** parse.c    7 Aug 2003 11:14:09 -0000       1.7
+--- parse.c    15 Nov 2005 00:25:44 -0000
+***************
+*** 231,236 ****
+--- 231,241 ----
+  
+       }                       /* end of switch */
+  
++      if (ps.tos >= STACK_SIZE) {
++          fprintf(stderr, "indent:  stack size overflow\n");
++          exit(1);
++      }
++      
+       reduce();               /* see if any reduction can be done */
+  
+  #ifdef debug
+Index: pr_comment.c
+===================================================================
+RCS file: /cvsroot/src/usr.bin/indent/pr_comment.c,v
+retrieving revision 1.9
+diff -c -r1.9 pr_comment.c
+*** pr_comment.c       7 Aug 2003 11:14:09 -0000       1.9
+--- pr_comment.c       15 Nov 2005 00:25:44 -0000
+***************
+*** 148,154 ****
+               ps.box_com = true;
+               ps.com_col = 1;
+       } else {
+!              if (*buf_ptr == '-' || *buf_ptr == '*' || *buf_ptr == '\n') {
+                       ps.box_com = true;      /* a comment with a '-', '*'
+                                                * or newline immediately
+                                                * after the start comment is
+--- 148,158 ----
+               ps.box_com = true;
+               ps.com_col = 1;
+       } else {
+!              /*
+!               * Don't process '\n' or every comment is treated as a
+!               * block comment, meaning there is no wrapping.
+!               */
+!              if (*buf_ptr == '-' || *buf_ptr == '*') {
+                       ps.box_com = true;      /* a comment with a '-', '*'
+                                                * or newline immediately
+                                                * after the start comment is
 ***************
-*** 186,192 ****
-                               *e_token++ = *buf_ptr++;
-                       }
-               }
-!          if (*buf_ptr == 'L' || *buf_ptr == 'l')
-               *e_token++ = *buf_ptr++;
-       }
-       else
---- 186,203 ----
-                               *e_token++ = *buf_ptr++;
-                       }
-               }
-!              if (*buf_ptr == 'F' || *buf_ptr == 'f') {
-!                      /* float constant */
-!                      *e_token++ = *buf_ptr++;
-!              } else {
-!                      /* integer constant (U, L, UL, LL, ULL) */
-!                      if (*buf_ptr == 'U' || *buf_ptr == 'u')
-!                              *e_token++ = *buf_ptr++;
-!                      if (*buf_ptr == 'L' || *buf_ptr == 'l')
-!                              *e_token++ = *buf_ptr++;
-!                      if (*buf_ptr == 'L' || *buf_ptr == 'l')
-!                              *e_token++ = *buf_ptr++;
-!              }
-       }
-       else
-           while (chartype[*buf_ptr] == alphanum) {    /* copy it over */
+*** 328,333 ****
+--- 332,350 ----
+                                                       goto end_of_comment;
+                                       }
+                               } while (*buf_ptr == ' ' || *buf_ptr == '\t');
++ 
++                              /*
++                               * If there is a blank comment line, we need to prefix
++                               * the line with the same three spaces that "/* " takes up.
++                               * Without this code, blank stared lines in comments have
++                               * three too-many characters on the line when wrapped.
++                               */
++                              if (s_com == e_com) {
++                                  *e_com++ = ' ';     /* add blanks for continuation */
++                                  *e_com++ = ' ';
++                                  *e_com++ = ' ';
++                                  now_col += 3;
++                              }
+                       } else
+                               if (++buf_ptr >= buf_end)
+                                       fill_buffer();
index c4f24a24f889f6b741a3991cff88a7a8480b5d97..c9e02c3600a40016bff39bac4fd9097c10f20a86 100755 (executable)
@@ -107,6 +107,9 @@ do
        indent -bad -bap -bc -bl -d0 -cdb -nce -nfc1 -di12 -i4 -l79 \
                -lp -nip -npro -bbb $EXTRA_OPTS \
 -TAES_KEY \
+-TAMT \
+-TAMTS \
+-TANY \
 -TASN1_BIT_STRING \
 -TASN1_BMPSTRING \
 -TASN1_BOOLEAN \
@@ -137,6 +140,7 @@ do
 -TASN1_UTF8STRING \
 -TASN1_VALUE \
 -TASN1_VISIBLESTRING \
+-TAV \
 -TA_Const \
 -TA_Expr \
 -TA_Expr_Kind \
@@ -218,11 +222,13 @@ do
 -TAuthRequest \
 -TBF_KEY \
 -TBIGNUM \
+-TBINOP \
 -TBIO \
 -TBIO_F_BUFFER_CTX \
 -TBIO_METHOD \
 -TBIO_dummy \
 -TBIT_STRING_BITNAME \
+-TBLOCK \
 -TBMS_Membership \
 -TBN_BLINDING \
 -TBN_CTX \
@@ -290,6 +296,8 @@ do
 -TCIRCLE \
 -TCOMP_CTX \
 -TCOMP_METHOD \
+-TCONDOP \
+-TCOP \
 -TCPFunction \
 -TCPPFunction \
 -TCRYPTO_EX_DATA \
@@ -300,6 +308,8 @@ do
 -TCRYPTO_EX_new \
 -TCRYPTO_MEM_LEAK_CB \
 -TCRYPTO_dynlock \
+-TCURCUR \
+-TCV \
 -TCacheCallbackFunction \
 -TCancelRequestPacket \
 -TCaseExpr \
@@ -320,6 +330,7 @@ do
 -TCheckPointStmt \
 -TChromosome \
 -TCity \
+-TClientData \
 -TClosePortalStmt \
 -TClosePtr \
 -TClusterStmt \
@@ -445,6 +456,7 @@ do
 -TEolType \
 -TErrorContextCallback \
 -TErrorData \
+-TExceptionLabelMap \
 -TExecContext \
 -TExecContextData \
 -TExecScanAccessMtd \
@@ -460,6 +472,7 @@ do
 -TExprDoneCond \
 -TExprState \
 -TExprStateEvalFunc \
+-TFF \
 -TFILE \
 -TFSMHeader \
 -TFSMPageData \
@@ -576,8 +589,11 @@ do
 -TGISTScanOpaqueData \
 -TGISTSearchStack \
 -TGIST_SPLITVEC \
+-TGP \
 -TGUC_yy_size_t \
 -TGUC_yy_state_type \
+-TGV \
+-TGVOP \
 -TGene \
 -TGenericExprState \
 -TGeqoEvalData \
@@ -609,11 +625,14 @@ do
 -THASHHDR \
 -THASHSEGMENT \
 -THASH_SEQ_STATUS \
+-THE \
+-THEK \
 -THISTORY_STATE \
 -THIST_ENTRY \
 -THTAB \
 -THTSU_Result \
 -THTSV_Result \
+-THV \
 -THash \
 -THashAllocFunc \
 -THashBuildState \
@@ -645,7 +664,13 @@ do
 -THeapTupleFields \
 -THeapTupleHeader \
 -THeapTupleHeaderData \
+-TI16 \
+-TI32 \
+-TI8 \
+-TIO \
 -TIOFuncSelector \
+-TIV \
+-TIV64 \
 -TIdList \
 -TInClauseInfo \
 -TIncrementVarSublevelsUp_context \
@@ -699,6 +724,7 @@ do
 -TItemOffset \
 -TItemPointer \
 -TItemPointerData \
+-TJMPENV \
 -TJoin \
 -TJoinExpr \
 -TJoinHashEntry \
@@ -719,6 +745,7 @@ do
 -TLHASH_HASH_FN_TYPE \
 -TLHASH_NODE \
 -TLINE \
+-TLISTOP \
 -TLOCALLOCK \
 -TLOCALLOCKOWNER \
 -TLOCALLOCKTAG \
@@ -727,6 +754,8 @@ do
 -TLOCKMETHODID \
 -TLOCKMODE \
 -TLOCKTAG \
+-TLOGOP \
+-TLOOP \
 -TLSEG \
 -TLVRelStats \
 -TLWLock \
@@ -757,10 +786,12 @@ do
 -TLogStmtLevel \
 -TLogicalTape \
 -TLogicalTapeSet \
+-TMAGIC \
 -TMD2_CTX \
 -TMD4_CTX \
 -TMD5_CTX \
 -TMDC2_CTX \
+-TMGVTBL \
 -TMaterial \
 -TMaterialPath \
 -TMaterialState \
@@ -789,6 +820,7 @@ do
 -TNUMDesc \
 -TNUMProc \
 -TNUM_poz \
+-TNV \
 -TName \
 -TNameData \
 -TNamespaceInfo \
@@ -809,6 +841,7 @@ do
 -TNumericDigit \
 -TNumericVar \
 -TOBJ_NAME \
+-TOP \
 -TObjectAddress \
 -TObjectAddresses \
 -TObjectClass \
@@ -829,6 +862,8 @@ do
 -TOperator \
 -TOprInfo \
 -TOutputContext \
+-TOutrec \
+-TPADOFFSET \
 -TPATH \
 -TPBE2PARAM \
 -TPBEPARAM \
@@ -836,6 +871,9 @@ do
 -TPEM_CTX \
 -TPEM_ENCODE_SEAL_CTX \
 -TPEM_USER \
+-TPERL_CONTEXT \
+-TPERL_SI \
+-TPGAsyncStatusType \
 -TPGErrorVerbosity \
 -TPGFInfoFunction \
 -TPGFunction \
@@ -843,18 +881,26 @@ do
 -TPGLZ_Header \
 -TPGLZ_HistEntry \
 -TPGLZ_Strategy \
+-TPGMessageField \
+-TPGNoticeHooks \
 -TPGPROC \
+-TPGQueryClass \
 -TPGRUsage \
 -TPGSemaphore \
 -TPGSemaphoreData \
+-TPGSetenvStatusType \
 -TPGShmemHeader \
 -TPGTransactionStatusType \
 -TPGVerbosity \
 -TPG_Lock_Status \
 -TPGcancel \
 -TPGconn \
+-TPGlobjfuncs \
 -TPGnotify \
+-TPGresAttDesc \
+-TPGresAttValue \
 -TPGresult \
+-TPGresult_data \
 -TPKCS7 \
 -TPKCS7_DIGEST \
 -TPKCS7_ENCRYPT \
@@ -866,10 +912,54 @@ do
 -TPKCS7_SIGNER_INFO \
 -TPKCS7_SIGN_ENVELOPE \
 -TPKCS8_PRIV_KEY_INFO \
+-TPLPGSQL_YYSTYPE \
 -TPLTemplate \
+-TPLpgSQL_arrayelem \
+-TPLpgSQL_condition \
+-TPLpgSQL_datum \
+-TPLpgSQL_diag_item \
+-TPLpgSQL_dstring \
+-TPLpgSQL_exception \
+-TPLpgSQL_exception_block \
+-TPLpgSQL_execstate \
+-TPLpgSQL_expr \
+-TPLpgSQL_func_hashkey \
+-TPLpgSQL_function \
+-TPLpgSQL_ns \
+-TPLpgSQL_nsitem \
+-TPLpgSQL_rec \
+-TPLpgSQL_recfield \
+-TPLpgSQL_row \
+-TPLpgSQL_stmt \
+-TPLpgSQL_stmt_assign \
+-TPLpgSQL_stmt_block \
+-TPLpgSQL_stmt_close \
+-TPLpgSQL_stmt_dynexecute \
+-TPLpgSQL_stmt_dynfors \
+-TPLpgSQL_stmt_execsql \
+-TPLpgSQL_stmt_exit \
+-TPLpgSQL_stmt_fetch \
+-TPLpgSQL_stmt_fori \
+-TPLpgSQL_stmt_fors \
+-TPLpgSQL_stmt_getdiag \
+-TPLpgSQL_stmt_if \
+-TPLpgSQL_stmt_loop \
+-TPLpgSQL_stmt_open \
+-TPLpgSQL_stmt_perform \
+-TPLpgSQL_stmt_raise \
+-TPLpgSQL_stmt_return \
+-TPLpgSQL_stmt_return_next \
+-TPLpgSQL_stmt_select \
+-TPLpgSQL_stmt_while \
+-TPLpgSQL_trigarg \
+-TPLpgSQL_type \
+-TPLpgSQL_var \
+-TPLpgSQL_variable \
+-TPMOP \
 -TPMSignalReason \
 -TPOLYGON \
 -TPQArgBlock \
+-TPQEnvironmentOption \
 -TPQExpBuffer \
 -TPQExpBufferData \
 -TPQconninfoOption \
@@ -880,6 +970,8 @@ do
 -TPROCLOCKTAG \
 -TPROC_HDR \
 -TPROC_QUEUE \
+-TPV \
+-TPVOP \
 -TPacketLen \
 -TPage \
 -TPageFreeSpaceInfo \
@@ -900,6 +992,8 @@ do
 -TPattern_Type \
 -TPendingOperationEntry \
 -TPendingRelDelete \
+-TPerlExitListEntry \
+-TPerlInterpreter \
 -TPgStat_Counter \
 -TPgStat_Info \
 -TPgStat_Msg \
@@ -958,6 +1052,7 @@ do
 -TQuerySource \
 -TRC2_KEY \
 -TRC4_KEY \
+-TREGEXP \
 -TRIPEMD160_CTX \
 -TRI_QueryHashEntry \
 -TRI_QueryKey \
@@ -1050,6 +1145,10 @@ do
 -TSSL_METHOD \
 -TSSL_SESSION \
 -TSTACK \
+-TSTRLEN \
+-TSUBLEXINFO \
+-TSV \
+-TSVOP \
 -TSaveArchivePtr \
 -TScalarArrayOpExpr \
 -TScalarArrayOpExprState \
@@ -1087,6 +1186,8 @@ do
 -TShmemIndexEnt \
 -TShutdownMode \
 -TSigHandler \
+-TSighandler_t \
+-TSigsave_t \
 -TSize \
 -TSlruCtl \
 -TSlruCtlData \
@@ -1138,7 +1239,101 @@ do
 -TTableDataInfo \
 -TTableInfo \
 -TTargetEntry \
+-TTclStubHooks \
+-TTclStubs \
+-TTcl_AppInitProc \
+-TTcl_AsyncHandler \
+-TTcl_AsyncProc \
+-TTcl_CallFrame \
+-TTcl_Channel \
+-TTcl_ChannelProc \
+-TTcl_ChannelType \
+-TTcl_ChannelTypeVersion \
+-TTcl_CloseProc \
+-TTcl_CmdDeleteProc \
+-TTcl_CmdInfo \
+-TTcl_CmdProc \
+-TTcl_CmdTraceProc \
+-TTcl_Command \
+-TTcl_Condition \
+-TTcl_CreateFileHandlerProc \
+-TTcl_DString \
+-TTcl_DeleteFileHandlerProc \
+-TTcl_DriverBlockModeProc \
+-TTcl_DriverClose2Proc \
+-TTcl_DriverCloseProc \
+-TTcl_DriverFlushProc \
+-TTcl_DriverGetHandleProc \
+-TTcl_DriverGetOptionProc \
+-TTcl_DriverHandlerProc \
+-TTcl_DriverInputProc \
+-TTcl_DriverOutputProc \
+-TTcl_DriverSeekProc \
+-TTcl_DriverSetOptionProc \
+-TTcl_DriverWatchProc \
+-TTcl_DupInternalRepProc \
+-TTcl_Encoding \
+-TTcl_EncodingConvertProc \
+-TTcl_EncodingFreeProc \
+-TTcl_EncodingState \
+-TTcl_EncodingType \
+-TTcl_EolTranslation \
+-TTcl_Event \
+-TTcl_EventCheckProc \
+-TTcl_EventDeleteProc \
+-TTcl_EventProc \
+-TTcl_EventSetupProc \
+-TTcl_ExitProc \
+-TTcl_FileFreeProc \
+-TTcl_FileProc \
+-TTcl_FreeInternalRepProc \
+-TTcl_FreeProc \
+-TTcl_HashEntry \
+-TTcl_HashSearch \
+-TTcl_HashTable \
+-TTcl_IdleProc \
+-TTcl_Interp \
+-TTcl_InterpDeleteProc \
+-TTcl_MainLoopProc \
+-TTcl_MathProc \
+-TTcl_Mutex \
+-TTcl_Namespace \
+-TTcl_NamespaceDeleteProc \
+-TTcl_NotifierProcs \
+-TTcl_Obj \
+-TTcl_ObjCmdProc \
+-TTcl_ObjType \
+-TTcl_PackageInitProc \
+-TTcl_PanicProc \
+-TTcl_Parse \
+-TTcl_PathType \
+-TTcl_Pid \
+-TTcl_QueuePosition \
+-TTcl_RegExp \
+-TTcl_RegExpIndices \
+-TTcl_RegExpInfo \
+-TTcl_SavedResult \
+-TTcl_SetFromAnyProc \
+-TTcl_SetTimerProc \
+-TTcl_Stat_ \
+-TTcl_TcpAcceptProc \
+-TTcl_ThreadCreateProc \
+-TTcl_ThreadDataKey \
+-TTcl_ThreadId \
+-TTcl_Time \
+-TTcl_TimerProc \
+-TTcl_TimerToken \
+-TTcl_Token \
+-TTcl_Trace \
+-TTcl_UniChar \
+-TTcl_UpdateStringProc \
+-TTcl_Value \
+-TTcl_ValueType \
+-TTcl_Var \
+-TTcl_VarTraceProc \
+-TTcl_WaitForEventProc \
 -TThingFile \
+-TThread \
 -TTidPath \
 -TTidScan \
 -TTidScanState \
@@ -1194,10 +1389,15 @@ do
 -TTypeFuncClass \
 -TTypeInfo \
 -TTypeName \
+-TU16 \
+-TU32 \
+-TU8 \
 -TUI \
 -TUI_METHOD \
 -TUI_STRING \
 -TUNDO_LIST \
+-TUNOP \
+-TUV \
 -TUnique \
 -TUniquePath \
 -TUniquePathMethod \
@@ -1279,6 +1479,20 @@ do
 -TXLogRelDesc \
 -TXLogwrtResult \
 -TXLogwrtRqst \
+-TXPV \
+-TXPVAV \
+-TXPVBM \
+-TXPVCV \
+-TXPVFM \
+-TXPVGV \
+-TXPVHV \
+-TXPVIO \
+-TXPVIV \
+-TXPVLV \
+-TXPVMG \
+-TXPVNV \
+-TXPVUV \
+-TXRV \
 -TXactCallback \
 -TXactCallbackItem \
 -TXactEvent \
@@ -1327,11 +1541,16 @@ do
 -Tchr \
 -Tclock_t \
 -Tclockid_t \
+-Tcodes_t \
 -Tcolor \
+-Tcomment_t \
 -Tconst_DES_cblock \
 -Tcontain_var_reference_context \
+-Tcv_flags_t \
 -Tdaddr_t \
+-Tdate \
 -Tdatetkn \
+-Tdecimal \
 -Tdeparse_context \
 -Tdeparse_namespace \
 -Tdev_t \
@@ -1342,9 +1561,11 @@ do
 -Teval_const_expressions_context \
 -TexecRowMark \
 -Texecution_state \
+-Texpectation \
 -Tf_smgr \
 -Tfd_mask \
 -Tfd_set \
+-Tfilter_t \
 -Tfinalize_primnode_context \
 -Tfind_expr_references_context \
 -Tfind_minimum_var_level_context \
@@ -1399,6 +1620,7 @@ do
 -Tint8 \
 -Tint8_t \
 -Tint8m_t \
+-Tinterval \
 -Tintf \
 -TitemIdSort \
 -TitemIdSortData \
@@ -1408,6 +1630,7 @@ do
 -TlclContext \
 -TlclTocEntry \
 -Tldiv_t \
+-Tline_t \
 -TmXactCacheEnt \
 -Tmacaddr \
 -Tmb2wchar_with_len_converter \
@@ -1417,12 +1640,18 @@ do
 -Tmode_t \
 -Tnlink_t \
 -Tnls_uint32 \
+-Tnumeric \
 -TobjectType \
 -Toff_t \
 -Toidvector \
+-Top_tr_array \
+-Topcode \
+-Topindex \
 -ToptType \
 -Tpcolor \
 -Tpem_password_cb \
+-TpgParameterStatus \
+-Tpg_conv_map \
 -Tpg_crc32 \
 -Tpg_enc \
 -Tpg_enc2name \
@@ -1437,6 +1666,11 @@ do
 -Tpgsql_thing_t \
 -Tpgthreadlock_t \
 -Tpid_t \
+-Tplperl_proc_desc \
+-Tplpgsql_HashEnt \
+-Tplpgsql_yysigned_char \
+-Tpltcl_proc_desc \
+-Tpltcl_query_desc \
 -Tpqbool \
 -Tpqsigfunc \
 -TprintQueryOpt \
@@ -1453,14 +1687,19 @@ do
 -Tptrdiff_t \
 -Tpull_var_clause_context \
 -Tpull_varnos_context \
+-Tpvcontents \
 -Tq128_t \
 -Tqaddr_t \
 -Tquad_t \
 -TrangeTableEntry_used_context \
 -Treduce_outer_joins_state \
+-Tregcomp_t \
 -Tregex_t \
+-Tregexec_t \
+-Tregexp \
 -Tregister_t \
 -Tregmatch_t \
+-Tregnode \
 -Tregoff_t \
 -Tregproc \
 -TremoteDep \
@@ -1468,6 +1707,7 @@ do
 -Trewrite_event \
 -Trm_detail_t \
 -Trune_t \
+-Trunops_proc_t \
 -Tsa_family_t \
 -Tsegsz_t \
 -Tsequence_magic \
@@ -1487,13 +1727,17 @@ do
 -Tssize_t \
 -Tssl_crock_st \
 -Tstack_t \
+-Tstrconst \
 -Tsubstitute_actual_parameters_context \
+-Tsvindex \
+-Tsvtype \
 -Tswblk_t \
 -Ttcflag_t \
 -Ttcp_seq \
 -TteReqs \
 -Ttext \
 -Ttime_t \
+-Ttimestamp \
 -Ttlist_vinfo \
 -Tts_db_fctx \
 -TuInt \