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 <[email protected]> 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 ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers