Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Pedro Alves <pedro@codesourcery.com>
To: gdb-patches@sourceware.org
Cc: Tom Tromey <tromey@redhat.com>
Subject: Re: FYI: small simplification in breakpoint.c
Date: Mon, 04 Apr 2011 15:34:00 -0000	[thread overview]
Message-ID: <201104041633.37786.pedro@codesourcery.com> (raw)
In-Reply-To: <m3y63qf3d0.fsf@fleche.redhat.com>

On Monday 04 April 2011 16:22:35, Tom Tromey wrote:
> I'm checking this in on the trunk.
> 
> This patch is just a little cleanup to replace a call to catch_exception
> (and associated helper function and argument struct) with a direct use
> of TRY_CATCH.

catch_exceptions also prints the exception string, if
any (w/ print_any_exception), was the change intentional?  (your note seems to
imply this is meant as a 1-1 replacement, but I do see a few
exception_print's below the TRY_CATCH, so I can't tell.)

> 
> Built and regtested on x86-64 (compile farm).
> 
> Tom
> 
> 2011-04-04  Tom Tromey  <tromey@redhat.com>
> 
> 	* breakpoint.c (struct captured_parse_breakpoint_args): Remove.
> 	(do_captured_parse_breakpoint): Remove.
> 	(create_breakpoint): `e' is now volatile.  Remove `parse_args'.
> 	Use TRY_CATCH directly.
> 
> Index: breakpoint.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/breakpoint.c,v
> retrieving revision 1.562
> diff -u -r1.562 breakpoint.c
> --- breakpoint.c	1 Apr 2011 16:59:57 -0000	1.562
> +++ breakpoint.c	4 Apr 2011 15:21:05 -0000
> @@ -6066,14 +6066,6 @@
>        delete_breakpoint (b);
>  }
>  
> -struct captured_parse_breakpoint_args
> -  {
> -    char **arg_p;
> -    struct symtabs_and_lines *sals_p;
> -    struct linespec_result *canonical_p;
> -    int *not_found_ptr;
> -  };
> -
>  struct lang_and_radix
>    {
>      enum language lang;
> @@ -7774,15 +7766,6 @@
>      }
>  }
>  
> -static void
> -do_captured_parse_breakpoint (struct ui_out *ui, void *data)
> -{
> -  struct captured_parse_breakpoint_args *args = data;
> -  
> -  parse_breakpoint_sals (args->arg_p, args->sals_p, args->canonical_p, 
> -		         args->not_found_ptr);
> -}
> -
>  /* Given TOK, a string specification of condition and thread, as
>     accepted by the 'break' command, extract the condition
>     string and thread number and set *COND_STRING and *THREAD.
> @@ -7918,7 +7901,7 @@
>  		   struct breakpoint_ops *ops,
>  		   int from_tty, int enabled, int internal)
>  {
> -  struct gdb_exception e;
> +  volatile struct gdb_exception e;
>    struct symtabs_and_lines sals;
>    struct symtab_and_line pending_sal;
>    char *copy_arg;
> @@ -7926,7 +7909,6 @@
>    struct linespec_result canonical;
>    struct cleanup *old_chain;
>    struct cleanup *bkpt_chain = NULL;
> -  struct captured_parse_breakpoint_args parse_args;
>    int i;
>    int pending = 0;
>    int not_found = 0;
> @@ -7937,11 +7919,6 @@
>    sals.nelts = 0;
>    init_linespec_result (&canonical);
>  
> -  parse_args.arg_p = &arg;
> -  parse_args.sals_p = &sals;
> -  parse_args.canonical_p = &canonical;
> -  parse_args.not_found_ptr = &not_found;
> -
>    if (type_wanted == bp_static_tracepoint && is_marker_spec (arg))
>      {
>        int i;
> @@ -7955,8 +7932,10 @@
>        goto done;
>      }
>  
> -  e = catch_exception (uiout, do_captured_parse_breakpoint, 
> -		       &parse_args, RETURN_MASK_ALL);
> +  TRY_CATCH (e, RETURN_MASK_ALL)
> +    {
> +      parse_breakpoint_sals (&arg, &sals, &canonical, &not_found);
> +    }
>  
>    /* If caller is interested in rc value from parse, set value.  */
>    switch (e.reason)
> 

-- 
Pedro Alves


  reply	other threads:[~2011-04-04 15:34 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-04 15:22 Tom Tromey
2011-04-04 15:34 ` Pedro Alves [this message]
2011-04-04 15:39   ` Pedro Alves
2011-04-04 15:42     ` Tom Tromey
2011-04-04 15:44       ` Pedro Alves
2011-04-04 16:14         ` Tom Tromey

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=201104041633.37786.pedro@codesourcery.com \
    --to=pedro@codesourcery.com \
    --cc=gdb-patches@sourceware.org \
    --cc=tromey@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