[RFA] Removes xfree/cleanup and C++fy in two exception functions.

Message ID 1513940981-32741-1-git-send-email-roirand@adacore.com
State New, archived
Headers

Commit Message

Xavier Roirand Dec. 22, 2017, 11:09 a.m. UTC
  This remove xstrprintf/xfree use and C++fy in two exception functions.

gdb/ChangeLog:

    * ada-lang.c (print_one_exception): Remove xstrprintf/xfree use.
    (print_mention_exception): C++fy.

Tested on x86_64-linux.
---
 gdb/ada-lang.c | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)
  

Comments

Joel Brobecker Dec. 22, 2017, 11:32 a.m. UTC | #1
Thanks Xavier.

> This remove xstrprintf/xfree use and C++fy in two exception functions.

remove -> removes.
C++fy -> C++ify or C++-ify.

But, rather than saying "C++ify", let's be more specific and just say
that we use C++ to remote a cleanup (that's the objective, right?).

> gdb/ChangeLog:
> 
>     * ada-lang.c (print_one_exception): Remove xstrprintf/xfree use.
>     (print_mention_exception): C++fy.

Same here: Let's be a bit more specific that just a mysterious C++ify.

Pre-approved with those changes above.

> Tested on x86_64-linux.
> ---
>  gdb/ada-lang.c | 15 ++++++---------
>  1 file changed, 6 insertions(+), 9 deletions(-)
> 
> diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
> index dad2b17..03f3e56 100644
> --- a/gdb/ada-lang.c
> +++ b/gdb/ada-lang.c
> @@ -12745,10 +12745,9 @@ print_one_exception (enum ada_exception_catchpoint_kind ex,
>        case ada_catch_exception:
>          if (c->excep_string != NULL)
>            {
> -            char *msg = xstrprintf (_("`%s' Ada exception"), c->excep_string);
> -
> -            uiout->field_string ("what", msg);
> -            xfree (msg);
> +	    uiout->field_fmt ("what",
> +			      _("`%s' Ada exception"),
> +			      c->excep_string);
>            }
>          else
>            uiout->field_string ("what", "all Ada exceptions");
> @@ -12789,11 +12788,9 @@ print_mention_exception (enum ada_exception_catchpoint_kind ex,
>        case ada_catch_exception:
>          if (c->excep_string != NULL)
>  	  {
> -	    char *info = xstrprintf (_("`%s' Ada exception"), c->excep_string);
> -	    struct cleanup *old_chain = make_cleanup (xfree, info);
> -
> -	    uiout->text (info);
> -	    do_cleanups (old_chain);
> +	    std::string info = string_printf (_("`%s' Ada exception"),
> +					      c->excep_string);
> +	    uiout->text (info.c_str ());
>  	  }
>          else
>            uiout->text (_("all Ada exceptions"));
> -- 
> 2.7.4
  

Patch

diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index dad2b17..03f3e56 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -12745,10 +12745,9 @@  print_one_exception (enum ada_exception_catchpoint_kind ex,
       case ada_catch_exception:
         if (c->excep_string != NULL)
           {
-            char *msg = xstrprintf (_("`%s' Ada exception"), c->excep_string);
-
-            uiout->field_string ("what", msg);
-            xfree (msg);
+	    uiout->field_fmt ("what",
+			      _("`%s' Ada exception"),
+			      c->excep_string);
           }
         else
           uiout->field_string ("what", "all Ada exceptions");
@@ -12789,11 +12788,9 @@  print_mention_exception (enum ada_exception_catchpoint_kind ex,
       case ada_catch_exception:
         if (c->excep_string != NULL)
 	  {
-	    char *info = xstrprintf (_("`%s' Ada exception"), c->excep_string);
-	    struct cleanup *old_chain = make_cleanup (xfree, info);
-
-	    uiout->text (info);
-	    do_cleanups (old_chain);
+	    std::string info = string_printf (_("`%s' Ada exception"),
+					      c->excep_string);
+	    uiout->text (info.c_str ());
 	  }
         else
           uiout->text (_("all Ada exceptions"));