From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com [IPv6:2a00:1450:4864:20::333]) by sourceware.org (Postfix) with ESMTPS id C99363858000 for ; Wed, 9 Mar 2022 19:18:10 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org C99363858000 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=embecosm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=embecosm.com Received: by mail-wm1-x333.google.com with SMTP id v2-20020a7bcb42000000b0037b9d960079so4090171wmj.0 for ; Wed, 09 Mar 2022 11:18:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=embecosm.com; s=google; h=date:from:to:cc:subject:in-reply-to:message-id:references :user-agent:mime-version; bh=d7Q48XkFJyG4mQWThh0cInNo9XfrapOvmrk0YbB6+8c=; b=C0sCTcO9qBzvpEo92S9tgTQZ5ZcmRTyq2k//zcuZJVRMHev9sgEhTMJo4032O49aEu 7jRL+8Dux0R3mf9xOIRVTXufRQQUhDhHayUaOuVpIgbtjUPtx885FCq5rHxr76ZPHRXy BlRl/bGhbIdhiEpLQEO7ISfOQaq/HRaTZC8U8h0tEnHbIm9YRNRbD93oDzqTSfvWnem8 J/zKimNBUFtjQbHG6SGbcJh+XdyMIgS4ji79am5SRcjTtnYqFo6Rmq5sEsLkXnEe6ij3 IaBkbNVLAFUMo2Bq9Io/Fnb7Hli32EXjvI7CTnyft4V7/QGgQg7PHYY5xV9P6MYo+6w0 GoNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:in-reply-to:message-id :references:user-agent:mime-version; bh=d7Q48XkFJyG4mQWThh0cInNo9XfrapOvmrk0YbB6+8c=; b=fS1N0uaQkglla34Txb6dSXcgtJf+KMpGK5IXDcx3QfHH+IrKy1ULsRDYFzwR4BHuP6 XkV2hlN14lXxujTfdJFXpVZvAfR2np53DqrlhgN5OmtjH2e1DP9LwUTv7IwrB8s5xbKH 94ZFViyPugxz4nA7uNIfPmN6/1S6Qww72LpXtoc5unLUwoRYxS23zObQTSe6XC8C5IMP MnVuKL1YPiWoGdHYT9SPishMev5C5h9SO3wHbvs7g/bd10kAMHc4cxXpdFQ8erGFRB22 cHnEzXmKxkVnARvXUEqJknYePwCsgn3jlUolZSd7HtsL6lpYqKysWb0U4VM/+0vCfGp5 6X3Q== X-Gm-Message-State: AOAM532BwNsWOt579zu73clunmH8IVdrxuFUEvyDcv0/tkp/ADWkT/8L xVDdoB9NDeCTLwpKhejM7PQfPfs5qMnRtA== X-Google-Smtp-Source: ABdhPJx4wbRuogrf63kDPTJ8LBl7ASB+GSIJPBd3tvvcS+d2Rk4hBjfOr7+y5BRiB2BgxvXvqtb+SQ== X-Received: by 2002:a7b:c196:0:b0:389:bddd:9c07 with SMTP id y22-20020a7bc196000000b00389bddd9c07mr676720wmi.177.1646853489851; Wed, 09 Mar 2022 11:18:09 -0800 (PST) Received: from tpp.orcam.me.uk (tpp.orcam.me.uk. [2001:8b0:154:0:ea6a:64ff:fe24:f2fc]) by smtp.gmail.com with ESMTPSA id j7-20020a5d5647000000b0020372c969d9sm2478691wrw.29.2022.03.09.11.18.09 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 09 Mar 2022 11:18:09 -0800 (PST) Date: Wed, 9 Mar 2022 19:18:08 +0000 (GMT) From: "Maciej W. Rozycki" To: gdb-patches@sourceware.org cc: Andrew Burgess , Simon Marchi , Tom Tromey , Simon Sobisch Subject: [PATCH v4 3/8] GDB: Add `NUMBER' completion to `set' integer commands In-Reply-To: Message-ID: References: User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Spam-Status: No, score=-2.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_ASCII_DIVIDERS, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Mar 2022 19:18:12 -0000 Fix a completion consistency issue with `set' commands accepting integer values and the special `unlimited' keyword: (gdb) complete print -elements print -elements NUMBER print -elements unlimited (gdb) vs: (gdb) complete set print elements set print elements unlimited (gdb) (there is a space entered at the end of both commands, not shown here) which also means if you strike with `set print elements ' input, it will, annoyingly, complete to `set print elements unlimited' right away rather than showing a choice between `NUMBER' and `unlimited'. Add `NUMBER' then as an available completion for such `set' commands: (gdb) complete set print elements set print elements NUMBER set print elements unlimited (gdb) Adjust the testsuite accordingly. --- New change in v4. --- gdb/cli/cli-decode.c | 2 ++ gdb/testsuite/gdb.base/settings.exp | 8 +++++++- 2 files changed, 9 insertions(+), 1 deletion(-) gdb-integer-complete-number.diff Index: src/gdb/cli/cli-decode.c =================================================================== --- src.orig/gdb/cli/cli-decode.c +++ src/gdb/cli/cli-decode.c @@ -989,6 +989,8 @@ integer_unlimited_completer (struct cmd_ NULL, }; + if (*text == '\0') + tracker.add_completion (make_unique_xstrdup ("NUMBER")); complete_on_enum (tracker, keywords, text, word); } Index: src/gdb/testsuite/gdb.base/settings.exp =================================================================== --- src.orig/gdb/testsuite/gdb.base/settings.exp +++ src/gdb/testsuite/gdb.base/settings.exp @@ -215,8 +215,14 @@ proc test-integer {variant} { test_gdb_complete_none \ "$set_cmd " } else { + test_gdb_complete_multiple "$set_cmd " "" "" { + "NUMBER" + "unlimited" + } + test_gdb_complete_none \ + "$set_cmd 1" test_gdb_complete_unique \ - "$set_cmd " \ + "$set_cmd u" \ "$set_cmd unlimited" }