This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch/rfc] Test struct0


On Tue, Feb 03, 2004 at 07:06:47PM -0500, Andrew Cagney wrote:
> Hello,
> 
> This adds a test for:
> 
> 	struct foo0 { };
> 
> to the structs.exp testcase (I'm assuming that this is legal ISO-C), it 

Nope.

      struct-or-union-specifier:
           struct-or-union identifier-opt { struct-declaration-list }
           struct-or-union identifier

      struct-or-union:
           struct
           union

      struct-declaration-list:
           struct-declaration
           struct-declaration-list struct-declaration

      struct-declaration:
           specifier-qualifier-list struct-declarator-list ;

So there must be a minimum of one declarator and trailing semicolon
inside the braces.  GCC will warn about this if you ask it to - it's
probably -ansi, or -std=c89 -ansi -pedantic.

While it's not legal C, I believe that it is legal C++.

> passes on PPC with stabs with:
> 
> >(gdb) PASS: gdb.base/structs.exp: ptype foo1; structs-tc
> >p/c fun0()
> >$1 = {<No data fields>}
> 
> Tt was intended for completness, however with a dwarf2 compiler:
> 
> amd64$ gcc --version
> gcc (GCC) 3.2.3 20030502 (Red Hat Linux 3.2.3-24)
> 
> >(gdb) PASS: gdb.base/structs.exp: ptype foo1; structs-tc
> >p/c fun0()
> >$1 = <incomplete type>
> 
> I guess I should file a bug report and kfail it?

If you want to add the test anyway and run it where it compiles, then
yeah.  I assume this runs afoul of the handling for declarations/opaque
types.  It would be nice to support it even if it's a GNU extension.

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]