Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Philipp Rudo <prudo@linux.vnet.ibm.com>
To: Sergio Durigan Junior <sergiodj@redhat.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [PATCH] Workaround build bug with GCC 6.2.1
Date: Fri, 24 Nov 2017 16:53:00 -0000	[thread overview]
Message-ID: <20171124175259.0e8d13b2@ThinkPad> (raw)
In-Reply-To: <874lpjabre.fsf@redhat.com>

On Fri, 24 Nov 2017 11:21:09 -0500
Sergio Durigan Junior <sergiodj@redhat.com> wrote:

> On Friday, November 24 2017, Philipp Rudo wrote:
> 
> > Building GDB with GCC 6.2.1 gives multiple errors like
> >
> > gdb/dtrace-probe.c: In member function ‘void dtrace_probe::build_arg_exprs(gdbarch*)’:
> > gdb/dtrace-probe.c:627:8: error: types may not be defined in a for-range-declaration [-Werror]
> >     for (struct dtrace_probe_arg &arg : m_args
> >
> > Fix it by removing the 'struct' keyword.
> >
> > A similar Bug was already fixed for GCC 6.3.1
> > https://sourceware.org/ml/gdb-patches/2017-10/msg00442.html
> >
> > gdb/ChangeLog:
> >
> > 	* dtrace-probe.c (dtrace_probe::build_arg_exprs)
> > 	(dtrace_probe::is_enabled, dtrace_probe::enable)
> > 	(dtrace_probe::disable): Remove keyword 'struct' at for-range
> > 	variable
> > 	* probe.c (gen_ui_out_table_header_info)
> > 	(print_ui_out_not_applicables):  Remove keyword 'struct' at
> > 	for-range variable  
> 
> This is fine.  I pushed it for you:
> 
> 30649c145114fe3aac089bf06e9457238d46341b
> 
> Thanks,
> 
> > ---
> >  gdb/dtrace-probe.c | 8 ++++----
> >  gdb/probe.c        | 4 ++--
> >  2 files changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/gdb/dtrace-probe.c b/gdb/dtrace-probe.c
> > index ace3d306a1..1c88f89054 100644
> > --- a/gdb/dtrace-probe.c
> > +++ b/gdb/dtrace-probe.c
> > @@ -624,7 +624,7 @@ dtrace_probe::build_arg_exprs (struct gdbarch *gdbarch)
> >    /* Iterate over the arguments in the probe and build the
> >       corresponding GDB internal expression that will generate the
> >       value of the argument when executed at the PC of the probe.  */
> > -  for (struct dtrace_probe_arg &arg : m_args)
> > +  for (dtrace_probe_arg &arg : m_args)
> >      {
> >        struct cleanup *back_to;
> >        struct parser_state pstate;
> > @@ -684,7 +684,7 @@ dtrace_probe::is_enabled () const
> >  {
> >    struct gdbarch *gdbarch = this->get_gdbarch ();
> >  
> > -  for (const struct dtrace_probe_enabler &enabler : m_enablers)
> > +  for (const dtrace_probe_enabler &enabler : m_enablers)
> >      if (!gdbarch_dtrace_probe_is_enabled (gdbarch, enabler.address))
> >        return false;
> >  
> > @@ -796,7 +796,7 @@ dtrace_probe::enable ()
> >  
> >    /* Iterate over all defined enabler in the given probe and enable
> >       them all using the corresponding gdbarch hook.  */
> > -  for (const struct dtrace_probe_enabler &enabler : m_enablers)
> > +  for (const dtrace_probe_enabler &enabler : m_enablers)
> >      if (gdbarch_dtrace_enable_probe_p (gdbarch))
> >        gdbarch_dtrace_enable_probe (gdbarch, enabler.address);
> >  }
> > @@ -826,7 +826,7 @@ dtrace_probe::disable ()
> >  
> >    /* Iterate over all defined enabler in the given probe and disable
> >       them all using the corresponding gdbarch hook.  */
> > -  for (struct dtrace_probe_enabler &enabler : m_enablers)
> > +  for (dtrace_probe_enabler &enabler : m_enablers)
> >      if (gdbarch_dtrace_disable_probe_p (gdbarch))
> >        gdbarch_dtrace_disable_probe (gdbarch, enabler.address);
> >  }
> > diff --git a/gdb/probe.c b/gdb/probe.c
> > index 1be8faad35..e20bf31630 100644
> > --- a/gdb/probe.c
> > +++ b/gdb/probe.c
> > @@ -367,7 +367,7 @@ gen_ui_out_table_header_info (const std::vector<bound_probe> &probes,
> >    std::vector<struct info_probe_column> headings
> >      = spops->gen_info_probes_table_header ();
> >  
> > -  for (const struct info_probe_column &column : headings)
> > +  for (const info_probe_column &column : headings)
> >      {
> >        size_t size_max = strlen (column.print_name);
> >  
> > @@ -410,7 +410,7 @@ print_ui_out_not_applicables (const static_probe_ops *spops)
> >     std::vector<struct info_probe_column> headings
> >       = spops->gen_info_probes_table_header ();
> >  
> > -  for (const struct info_probe_column &column : headings)
> > +  for (const info_probe_column &column : headings)
> >      current_uiout->field_string (column.field_name, _("n/a"));
> >  }
> >  
> > -- 
> > 2.13.5  
> 

Wow, thanks.

Philipp


      reply	other threads:[~2017-11-24 16:53 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-23 15:57 Philipp Rudo
2017-11-23 19:39 ` Sergio Durigan Junior
2017-11-24 10:06   ` Philipp Rudo
2017-11-24 10:06     ` Philipp Rudo
2017-11-24 16:21       ` Sergio Durigan Junior
2017-11-24 16:53         ` Philipp Rudo [this message]

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=20171124175259.0e8d13b2@ThinkPad \
    --to=prudo@linux.vnet.ibm.com \
    --cc=gdb-patches@sourceware.org \
    --cc=sergiodj@redhat.com \
    /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