From: Pedro Alves <pedro@codesourcery.com>
To: Harald Koenig <H.Koenig@science-computing.de>
Cc: bug-gdb@gnu.org, gdb-patches@sourceware.org
Subject: Re: some compile errors fo gdb-7.0.1
Date: Tue, 23 Feb 2010 17:08:00 -0000 [thread overview]
Message-ID: <201002231707.48376.pedro@codesourcery.com> (raw)
In-Reply-To: <20100223152233.GA14951@atuin.science-computing.de>
On Tuesday 23 February 2010 15:22:33, Harald Koenig wrote:
> Hi Pedro,
>
> On Feb 18, Pedro Alves wrote:
>
> > I encourage you to try building cvs head, or a recent
> > snapshot with hp cc so catch other possible tweaks
> > necessary, as gdb 7.1 is close to branching out.
>
> thanks for the hint! ok, so here are some more problems at least FYI,
> not sure if all of them can and must be fixed ?!
>
Sure, why not? Thanks.
> with no specific order:
>
> -------------------------------------------------------------------------------
> SGI IRIX:
>
> cc-1028 cc: ERROR File = gdb-CVS-20100222/gdb/varobj.c, Line = 1703
> The expression used must have a constant value.
>
> varobj_update_result r = {*varp};
> ^
>
> using "gcc -pedantic" you'll get at least a warning about this problem:
>
> gdb-CVS-20100222/gdb/varobj.c:1703: warning: initializer element is not computable at load time
> gdb-CVS-20100222/gdb/varobj.c:1711: warning: initializer element is not computable at load time
> gdb-CVS-20100222/gdb/varobj.c:1741: warning: initializer element is not computable at load time
> gdb-CVS-20100222/gdb/varobj.c:1818: warning: initializer element is not computable at load time
> gdb-CVS-20100222/gdb/varobj.c:1828: warning: initializer element is not computable at load time
> gdb-CVS-20100222/gdb/varobj.c:1855: warning: initializer element is not computable at load time
>
> a possible fix for the 1st error would be varobj.c.diff (attached).
>
Yes, that's the obvious fix, but, your patch doesn't compile in
a couple of places. :-)
On Tuesday 23 February 2010 15:22:33, Harald Koenig wrote:
> - varobj_update_result r = {*varp};
> + varobj_update_result r = {0};
> + r.varobj = varp;
^ should be `*varp'.
Don't worry, I've fixed it here.
> -------------------------------------------------------------------------------
> old bison/yacc:
>
> on some older linux I run into this problem:
>
> c-exp.y:2238: error: field 'value' has incomplete type
>
> these are the distros and bison/byacc versions:
>
> suse 9.0 bison 1.75
> redhat 9 bison 1.35
> centos 5.0 byacc-1.9-29.2.2
>
> the attached patch c-exp.y.diff seems to work both with bison-2.3 and
> those older versions...
Right, YYSTYPE is used in other places without the `union' tag.
I've applied the varobj patch to both mainline and the 7.1
branch, and the c-exp.y patch to mainline (only needed there)
under the obviously correct rule. They're small enough to
not require copyright assignment, but something bigger
than this, or too many of these, and we will. Let us know
if you're interested to get you started. Also please take a
look at src/gdb/CONTRIBUTE.
>
> -------------------------------------------------------------------------------
> Solaris
>
> on solaris 5.8 (sparc, Sun C 5.7 2005/01/07) and 5.10 (sparc Sun C 5.8 2005/10/13 and x86 Sun C 5.9 SunOS_i386 Patch 124868-01 2007/07/12) the cc complains about unknown __FUNCTION__ :
>
> "gdb-CVS-20100222/bfd/elfxx-sparc.c", line 2944: undefined symbol: __FUNCTION__
> and
> "gdb-CVS-20100222/bfd/elf32-i386.c", line 1406: undefined symbol: __FUNCTION__
> "gdb-CVS-20100222/bfd/elf32-i386.c", line 3012: undefined symbol: __FUNCTION__
>
>
> the short hack in bfd.diff is far from being perfect, just an example
> how to get it compiling because
Looks like you forgot to attach this, but, in any case, bfd is
maintained by the binutils folks, you should take that issue
there. FYI, the CVS repository is shared between gdb, binutils
and other projects, so you should see the same issue when
building binutils. Of course, a fix for this should be
quite okay for the gdb 7.1 branch as well, once the binutils
folks approve it.
> (a) it should check for C99 and/or solaris (e.g. if __func__ is really available -- looks like a autoconf thingy;)
> (b) this check/define should be handled elsewhere at one central place
> as there are more files "affected" :
>
> gdb-CVS-20100222 > grep -rl __FUNCTION__ .
> ./bfd/elfxx-sparc.c
> ./bfd/bfd-in2.h
> ./bfd/nlm32-sparc.c
> ./bfd/elf64-x86-64.c
> ./bfd/elf32-i386.c
> ./bfd/elf32-bfin.c
> ./bfd/bfd-in.h
> ./sim/cris/traps.c
This one's our responsability. You'll only trip on this if you
build for --target=cris*, though.
> ./gdb/ChangeLog-2004
> ./gdb/ChangeLog-2002
> ./gdb/ChangeLog-2000
>
>
> as the ChangeLogs tell that's not really a new problem, IMHO I'd go with ./gdb/ChangeLog-2000 ;-))
>
> ./gdb/ChangeLog-2000: * uw-thread.c: Remove __FUNCTION__ GNUism.
> ./gdb/ChangeLog-2002: __FUNCTION__.
> ./gdb/ChangeLog-2002: * gnu-nat.c (do_mach_notify_no_senders): Replace __FUNCTION__ with
> ./gdb/ChangeLog-2004: * ia64-tdep.c (ia64_find_proc_info_x): Do not use __FUNCTION__.
>
> -------------------------------------------------------------------------------
> AIX 5.3
>
> just FYI: while gdb 7.0.1 crashes when trying to start a program
> (typing "gdb a.out" and "r" will SIGSEGV)...
>
> gdb 7.1.50.20100222-cvs seems to work, at least running and simple break points work...
> -------------------------------------------------------------------------------
Looks like progress to me. :-) Kidding aside, the truth is
that we don't have enough people tending for these ports, so
they often rot. :-(
--
Pedro Alves
next prev parent reply other threads:[~2010-02-23 17:08 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20100215141621.GA9469@atuin.science-computing.de>
2010-02-18 19:23 ` Pedro Alves
2010-02-23 15:22 ` Harald Koenig
2010-02-23 17:08 ` Pedro Alves [this message]
2010-02-23 16:35 ` Harald Koenig
2010-02-23 17:14 ` Harald Koenig
2010-02-24 12:51 ` Harald Koenig
2010-02-24 13:35 ` Build errors on AIX Pedro Alves
2010-02-24 14:09 ` Harald Koenig
2010-03-01 6:47 ` Joel Brobecker
2010-03-01 6:51 ` some compile errors fo gdb-7.0.1 Joel Brobecker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201002231707.48376.pedro@codesourcery.com \
--to=pedro@codesourcery.com \
--cc=H.Koenig@science-computing.de \
--cc=bug-gdb@gnu.org \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox