This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
RE: [RFA] Fix display of array of unspecified length inside structures
- From: "Pierre Muller" <pierre dot muller at ics-cnrs dot unistra dot fr>
- To: "'Pedro Alves'" <pedro at codesourcery dot com>, <gdb-patches at sourceware dot org>
- Date: Fri, 18 Feb 2011 15:54:03 +0100
- Subject: RE: [RFA] Fix display of array of unspecified length inside structures
- References: <00ac01cbcf5c$31f5bc00$95e13400$@muller@ics-cnrs.unistra.fr> <201102181147.52337.pedro@codesourcery.com>
> -----Message d'origine-----
> De?: gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> owner@sourceware.org] De la part de Pedro Alves
> Envoyé?: vendredi 18 février 2011 12:48
> À?: gdb-patches@sourceware.org
> Cc?: Pierre Muller
> Objet?: Re: [RFA] Fix display of array of unspecified length inside
> structures
>
> On Friday 18 February 2011 11:08:38, Pierre Muller wrote:
>
> > PS: It could be wise to add some test in the testsuite for
> > this, but I have no idea where I could insert this kind of test,
> > any ideas?
>
> Yes, please. We have surprisingly few tests for this sort of
> thing, AFAICS. I'm not even sure this is a regression from
> my recent changes, I think it may well not be.
I checked out gdb version 7.2 shows this regression,
as compared to Cygwin 6.8 at least...
Which means that the regression is not really recent.
This might means that we should also merge this patch to
the branch, no?
> Zero-length arrays (as poor man's flexible arrays) are supported
> in GNU C as an extension. To be portable, you'd
> need to use an array of length 1 (or c99's real flexible arrays),
> but that won't trigger the bug.
Apparently there is also the flexible array member construct
see
http://gcc.gnu.org/onlinedocs/gcc-4.1.2/gcc/Zero-Length.html
> I'd point at printcmds.exp, but I'm not sure if there are compilers
> out there that choke on the construct... There's always a
> new test file option...
>
> > PS2: It is probably impossible to make such a test without
> > alloca or some other memory allocation function, no?
> > Are there any system restriction for this?
There is a long check at start of gdb.base/funcargs.c
but it might just be to really check that alloca really uses
the stack...
> > 2011-02-18 Pierre Muller <muller@ics.u-strasbg.fr>
> >
> > * c-valprint.c (c_val_print): Add embedded_offset to address
> > for arrays of unspecified length.
> > * p-valprint.c (pascal_val_print): Likewise.
>
> Okay, thanks.
Thanks for the approval,
committed to main branch.
Pierre