Andrew Dunstan wrote:
> 
> 
> Bruce Momjian wrote:
> > I did a diff, attached, and found some typedefs that don't appear, like
> > PortalData.  That is defined in our code as:
> >
> >     typedef struct PortalData *Portal;
> >     
> >     typedef struct PortalData
> >     {
> >         /* Bookkeeping data */
> >     ...
> >         bool        visible;        /* include this portal in pg_cursors? */
> >     } PortalData;
> >
> > I will try to build on Linux here and see how objdump displays that,
> > unless you can get me the output.
> >   
> 
> 
> Well, that is almost certainly a result of the change you asked me to 
> make :-)
> 
> The symbol is in the run done early this morning before those changes. 
> See 
> <http://www.pgbuildfarm.org/cgi-bin/show_stage_log.pl?nm=dungbeetle&dt=2009-06-10%20064401&stg=typedefs>
> 
> So we need to look and see what tag that symbol has in the objdump output.

OK, I got the answer for Linux.  I built 8.4 RC2 and ran:

        objdump -W postgres |grep -3 PortalData

and the output is attached.  You will notice every mention of PortalData
has 'DW_TAG_structure_type' (stucture member) above it, and none have
DW_TAG_typedef (typedef tag).  This is caused by this documented
behavior from find_typedef:

        # Linux
        # Unfortunately the Linux version doesn't show unreferenced typedefs.
        # The problem is that they are still in the source code so should be
        # indented properly.  However, I think pgindent only cares about
        # the typedef references, not the definitions, so I think it might
        # be fine

So that is why the Linux list is shorter, but again, I think that is fine.
Andrew, let me know when your list is ready.

-- 
  Bruce Momjian  <br...@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +
  <8db7>     DW_AT_byte_size   : 4      
  <8db8>     DW_AT_type        : <8dbc> 
 <1><8dbc>: Abbrev Number: 24 (DW_TAG_structure_type)
  <8dbd>     DW_AT_name        : PortalData     
  <8dc8>     DW_AT_byte_size   : 96     
  <8dc9>     DW_AT_decl_file   : 40     
  <8dca>     DW_AT_decl_line   : 105    
--
  <14706e>     DW_AT_byte_size   : 4    
  <14706f>     DW_AT_type        : <147073>     
 <1><147073>: Abbrev Number: 24 (DW_TAG_structure_type)
  <147074>     DW_AT_name        : PortalData   
  <14707f>     DW_AT_byte_size   : 96   
  <147080>     DW_AT_decl_file   : 43   
  <147081>     DW_AT_decl_line   : 105  
--
  <20dd10>     DW_AT_byte_size   : 4    
  <20dd11>     DW_AT_type        : <20dd15>     
 <1><20dd15>: Abbrev Number: 17 (DW_TAG_structure_type)
  <20dd16>     DW_AT_name        : PortalData   
  <20dd21>     DW_AT_byte_size   : 96   
  <20dd22>     DW_AT_decl_file   : 46   
  <20dd23>     DW_AT_decl_line   : 105  
--
  <2144bc>     DW_AT_byte_size   : 4    
  <2144bd>     DW_AT_type        : <2144c1>     
 <1><2144c1>: Abbrev Number: 16 (DW_TAG_structure_type)
  <2144c2>     DW_AT_name        : PortalData   
  <2144cd>     DW_AT_byte_size   : 96   
  <2144ce>     DW_AT_decl_file   : 46   
  <2144cf>     DW_AT_decl_line   : 105  
--
  <273c96>     DW_AT_byte_size   : 4    
  <273c97>     DW_AT_type        : <273c9b>     
 <1><273c9b>: Abbrev Number: 19 (DW_TAG_structure_type)
  <273c9c>     DW_AT_name        : PortalData   
  <273ca7>     DW_AT_byte_size   : 96   
  <273ca8>     DW_AT_decl_file   : 40   
  <273ca9>     DW_AT_decl_line   : 105  
--
  <348c3f>     DW_AT_byte_size   : 4    
  <348c40>     DW_AT_type        : <348c44>     
 <1><348c44>: Abbrev Number: 20 (DW_TAG_structure_type)
  <348c45>     DW_AT_name        : PortalData   
  <348c50>     DW_AT_byte_size   : 96   
  <348c51>     DW_AT_decl_file   : 42   
  <348c52>     DW_AT_decl_line   : 105  
--
  <4b0f00>     DW_AT_byte_size   : 4    
  <4b0f01>     DW_AT_type        : <4b0f05>     
 <1><4b0f05>: Abbrev Number: 7 (DW_TAG_structure_type)
  <4b0f06>     DW_AT_name        : PortalData   
  <4b0f11>     DW_AT_byte_size   : 96   
  <4b0f12>     DW_AT_decl_file   : 57   
  <4b0f13>     DW_AT_decl_line   : 105  
--
  <4b9974>     DW_AT_byte_size   : 4    
  <4b9975>     DW_AT_type        : <4b9979>     
 <1><4b9979>: Abbrev Number: 17 (DW_TAG_structure_type)
  <4b997a>     DW_AT_name        : PortalData   
  <4b9985>     DW_AT_byte_size   : 96   
  <4b9986>     DW_AT_decl_file   : 47   
  <4b9987>     DW_AT_decl_line   : 105  
--
  <4c28e3>     DW_AT_byte_size   : 4    
  <4c28e4>     DW_AT_type        : <4c28e8>     
 <1><4c28e8>: Abbrev Number: 22 (DW_TAG_structure_type)
  <4c28e9>     DW_AT_name        : PortalData   
  <4c28f4>     DW_AT_byte_size   : 96   
  <4c28f5>     DW_AT_decl_file   : 42   
  <4c28f6>     DW_AT_decl_line   : 105  
--
  <5d8c98>     DW_AT_byte_size   : 4    
  <5d8c99>     DW_AT_type        : <5d8c9d>     
 <1><5d8c9d>: Abbrev Number: 26 (DW_TAG_structure_type)
  <5d8c9e>     DW_AT_name        : PortalData   
  <5d8ca9>     DW_AT_byte_size   : 96   
  <5d8caa>     DW_AT_decl_file   : 39   
  <5d8cab>     DW_AT_decl_line   : 105  
--
  <5e42f0>     DW_AT_byte_size   : 4    
  <5e42f1>     DW_AT_type        : <5e42f5>     
 <1><5e42f5>: Abbrev Number: 26 (DW_TAG_structure_type)
  <5e42f6>     DW_AT_name        : PortalData   
  <5e4301>     DW_AT_byte_size   : 96   
  <5e4302>     DW_AT_decl_file   : 40   
  <5e4303>     DW_AT_decl_line   : 105  
--
  <5f681d>     DW_AT_byte_size   : 4    
  <5f681e>     DW_AT_type        : <5f6822>     
 <1><5f6822>: Abbrev Number: 17 (DW_TAG_structure_type)
  <5f6823>     DW_AT_name        : PortalData   
  <5f682e>     DW_AT_byte_size   : 96   
  <5f682f>     DW_AT_decl_file   : 45   
  <5f6830>     DW_AT_decl_line   : 105  
--
  <668927>     DW_AT_byte_size   : 4    
  <668928>     DW_AT_type        : <66892c>     
 <1><66892c>: Abbrev Number: 16 (DW_TAG_structure_type)
  <66892d>     DW_AT_name        : PortalData   
  <668938>     DW_AT_byte_size   : 96   
  <668939>     DW_AT_decl_file   : 43   
  <66893a>     DW_AT_decl_line   : 105  
-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to