This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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 to fix PR9861


On 9/26/05, Bryce McKinlay <mckinlay@redhat.com> wrote:
> Andrew Haley wrote:
>
> >Ian Lance Taylor writes:
> > > Andrew Haley <aph@redhat.com> writes:
> > >
> > > > How about simply
> > > >
> > > >  f.main(String[])void
> > > >
> > > > That's the nearest to the Java signature form.
> > >
> > > I don't know, it's kind of ugly and confusing.
> >
> >Looks OK to me, but maybe that's a Java thing.  Or maybe I'm weird.
> >
> >
> I'll also cast a vote for this form - it is the simplest and most Java
> like. I don't like the ":".
>
> Bryce

The patch for this is attached (fix-java-demangle.diff).  I added a
flag DMGL_RET_POSTFIX for the demangler.  When this flag is present,
the return type is output after the function signature with a space
separating the two.  This option is enabled by default for the Java
demangler.  I modified the test harness and added test cases for this
as well.  This patch applies against cvs head, so it replaces the
libiberty parts of my previous patch.

I am also attaching a patch to gdb that uses this new flag to put
return types after the function signature for normal C++ symbols
stored in the lookup table too.  This helps with CNI debugging and as
a consequence, works around the issue that was pointed out earlier
with selecting template functions.  I'm not terribly familiar with gdb
internals, so I am not certain if this second patch causes any other
problems or whether the maintainers want to change the behavior for
template functions.

If this approach is acceptable, I will role this up into an overall
patch and resubmit.

TJ

Attachment: fix-java-demangle.diff
Description: Binary data

Attachment: gdb.diff
Description: Binary data


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