Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Pedro Alves <pedro@palves.net>
To: Lancelot SIX <lsix@lancelotsix.com>, gdb-patches@sourceware.org
Subject: Re: [PATCH 08/12] gdb/testsuite: Remove duplicates from gdb.mi/mi-nonstop-exit.exp
Date: Fri, 10 Dec 2021 21:56:12 +0000	[thread overview]
Message-ID: <82c036ab-e9ee-ce09-498e-c419c84a58cd@palves.net> (raw)
In-Reply-To: <20211126230038.103225-9-lsix@lancelotsix.com>

On 2021-11-26 23:00, Lancelot SIX via Gdb-patches wrote:
> When running the testsuite, I have:
> 
>     Running .../gdb/testsuite/gdb.mi/mi-nonstop-exit.exp ...
>     DUPLICATE: gdb.mi/mi-nonstop-exit.exp: breakpoint at main
>     DUPLICATE: gdb.mi/mi-nonstop-exit.exp: mi runto main
> 
> This test runs the same sequence of operations twice.  Refactor the code
> by running both of those sequences within a foreach_with_prefix block to
> ensure that the commands have unique test names.
> 
> There is a slight modification of behaviour introduced by this patch.
> mi_delete_breakpoints is called one more time just before quitting gdb,
> which is in my opinion is worth given the simplification.

It's much more typical to delete breakpoints _before_ running to main.  I.e.,
putting the "restart" code at the beginning.  If that works, I'd mildly prefer that.

This is OK either way.

> 
> Tested on x86_64-linux.
> ---
>  gdb/testsuite/gdb.mi/mi-nonstop-exit.exp | 22 +++++++---------------
>  1 file changed, 7 insertions(+), 15 deletions(-)
> 
> diff --git a/gdb/testsuite/gdb.mi/mi-nonstop-exit.exp b/gdb/testsuite/gdb.mi/mi-nonstop-exit.exp
> index 99ac92f15a3..740856ca822 100644
> --- a/gdb/testsuite/gdb.mi/mi-nonstop-exit.exp
> +++ b/gdb/testsuite/gdb.mi/mi-nonstop-exit.exp
> @@ -39,24 +39,16 @@ save_vars { GDBFLAGS } {
>  mi_gdb_test "-gdb-set mi-async 1" ".*"
>  mi_detect_async
>  
> -if { [mi_runto_main] < 0 } {
> -    continue
> -}
> -
> -mi_send_resuming_command "exec-continue" "continue"
> -
> -mi_expect_stop "exited-normally" "" "" "" "" "" "finished exec continue"
> +foreach_with_prefix iteration {1 2} {
> +    if { [mi_runto_main] < 0 } {
> +        continue
> +    }
>  
> -# Run the program again.
> +    mi_send_resuming_command "exec-continue" "continue"
>  
> -mi_delete_breakpoints
> +    mi_expect_stop "exited-normally" "" "" "" "" "" "finished exec continue"
>  
> -if { [mi_runto_main] < 0 } {
> -    continue
> +    mi_delete_breakpoints
>  }
>  
> -mi_send_resuming_command "exec-continue" "continue (2)"
> -
> -mi_expect_stop "exited-normally" "" "" "" "" "" "finished exec continue (2)"
> -
>  mi_gdb_exit
> 


  reply	other threads:[~2021-12-10 21:56 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-26 23:00 [PATCH 00/12] Remove DUPLICATEs warnings Lancelot SIX via Gdb-patches
2021-11-26 23:00 ` [PATCH 01/12] gdb/testsuite: Remove duplicates from gdb.mi/mi-syn-frame.exp Lancelot SIX via Gdb-patches
2021-11-26 23:00 ` [PATCH 02/12] gdb/testsuite: Remove duplicates from gdb.mi/mi-nsthrexec.exp Lancelot SIX via Gdb-patches
2021-11-26 23:00 ` [PATCH 03/12] gdb/testsuite: Remove duplicates from gdb.mi/mi-watch.exp Lancelot SIX via Gdb-patches
2021-11-26 23:00 ` [PATCH 04/12] gdb/testsuite: Remove duplicates from gdb.mi/mi-catch-load.exp Lancelot SIX via Gdb-patches
2021-12-10 21:55   ` Pedro Alves
2021-12-16 23:27     ` Lancelot SIX via Gdb-patches
2021-12-17 12:21       ` Pedro Alves
2021-11-26 23:00 ` [PATCH 05/12] gdb/testsuite: Remove duplicates from gdb.mi/mi-var-child.exp Lancelot SIX via Gdb-patches
2021-12-10 21:55   ` Pedro Alves
2021-12-16 23:40     ` Lancelot SIX via Gdb-patches
2021-12-17 13:00       ` [PATCH] gdb/testsuite: Remove some duplication " Pedro Alves
2021-12-17 23:24         ` Lancelot SIX via Gdb-patches
2022-01-06 16:44           ` Pedro Alves
2021-11-26 23:00 ` [PATCH 06/12] gdb/testsuite: Remove duplicates from gdb.mi/mi2-var-child.exp Lancelot SIX via Gdb-patches
2021-11-26 23:00 ` [PATCH 07/12] gdb/testsuite: Remove duplicates from gdb.mi/mi-nonstop.exp Lancelot SIX via Gdb-patches
2021-11-26 23:00 ` [PATCH 08/12] gdb/testsuite: Remove duplicates from gdb.mi/mi-nonstop-exit.exp Lancelot SIX via Gdb-patches
2021-12-10 21:56   ` Pedro Alves [this message]
2021-12-16 23:48     ` Lancelot SIX via Gdb-patches
2021-12-17 13:52       ` Pedro Alves
2021-11-26 23:00 ` [PATCH 09/12] gdb/testsuite: Remove duplicates from gdb.mi/mi-var-rtti.exp Lancelot SIX via Gdb-patches
2021-11-26 23:00 ` [PATCH 10/12] gdb/testsuite: Remove duplicates from gdb.mi/mi-language.exp Lancelot SIX via Gdb-patches
2021-12-10 21:56   ` Pedro Alves
2021-12-16 23:59     ` Lancelot SIX via Gdb-patches
2021-12-17 13:53       ` Pedro Alves
2021-11-26 23:00 ` [PATCH 11/12] gdb/testsuite: Remove duplicates from gdb.mi/mi2-amd64-entry-value.exp Lancelot SIX via Gdb-patches
2021-12-10 21:56   ` Pedro Alves
2021-12-17 22:57     ` Lancelot SIX via Gdb-patches
2022-01-06 16:49       ` Pedro Alves
2021-11-26 23:00 ` [PATCH 12/12] gdb/testsuite: Remove duplicates from gdb.threads/staticthreads.ex Lancelot SIX via Gdb-patches
2021-12-09 18:15 ` [PATCH 00/12] Remove DUPLICATEs warnings Tom Tromey
2021-12-10 22:01 ` Pedro Alves
2022-01-07 22:43 ` Lancelot SIX via Gdb-patches

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=82c036ab-e9ee-ce09-498e-c419c84a58cd@palves.net \
    --to=pedro@palves.net \
    --cc=gdb-patches@sourceware.org \
    --cc=lsix@lancelotsix.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