From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2068.outbound.protection.outlook.com [40.107.244.68]) by sourceware.org (Postfix) with ESMTPS id 5D5773858C35 for ; Mon, 16 Oct 2023 15:06:13 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5D5773858C35 Authentication-Results: sourceware.org; dmarc=fail (p=quarantine dis=none) header.from=amd.com Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=amd.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 5D5773858C35 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.107.244.68 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1697468774; cv=pass; b=GnN4fhuSjOZGxidnLAIGi7+rrE8VU2SRl5z+GWbRXnfwk9gi+IV1Oh2pvZoLLfN8uv6C80ZLUyru1rdYLeT2xe8GGjtOIC9dXRLdDIN2dGcX4yh1/ZENMQihprY01pgUuTeBU9vI9j9cmCVMfaEaVsPHMv18KEUfdSVpkB871EA= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1697468774; c=relaxed/simple; bh=3Q09A7ZlaGX1elRgIVXAv36YjldsJvWRY8YB9HXH2CI=; h=DKIM-Signature:Message-ID:Date:Subject:To:From:MIME-Version; b=Zz1YVb6iNLtVMOUCfHxNQ2hIMNtqWGfGtOp2g6uCVhi6QMGT4rBpYZiOl4aw5vHx42Q7Kz9e9q9O8YNZaB2vdh/vunm1h/QYdRqowMgM1PjS3nxhpS53s+leYU4WDw/9jfHqZML8q8s+ISGtYyHhcch6zFp7caPmyBmtFF2OKB4= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NJ3rCRyyQBuQ/QJluo5FLPTX0pZG25nUlX1bgwLlfZUvZP6HvqowG0m7A1ijmLF8EG0IdC5So2JJpTCgbbSICauj9ZKU5pTFWhLy11hONYoAqc1nzSmdIeO45HCLS7S9Ek/iCQemwZATtJmsjBYqulI3o/v/VJPtmG8fTW9CXXmuZCEVs9I/75nD0UJmti0mX/iaOGMI+JcKhC53arUsCEw/7f986CyeyG9kPaPUgLX9VEq9V4Lc2xqAQsYr82YfW22yiAPhHb000o+aTfy72qX4J4McuY7kbENzTWmLVENnmG9cv+2uflzpwYTy4YvspqI+fwR3nncEKBXhjUSfiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=3nosqq3XP0IR9gTvFyRz/3NvnqOuUs1DaMDfFLrAb98=; b=GziN9gPh2HGZKWVIH213cULWuRQB3ZWqTc+hfNq5mP2KaKVIIJ6OrTMBDP6hET7ZOFHE/cJMNxYfHjD3PJDxavV2oLwceqJ1jFILTaxvdLL02dQTbN1OknY13pKkx6zejYxvivNqILc/1rUWwS0Gqp5xuLln6KuDfTVwr3v1ewhMSyOPRAtQ2+2BHXv9rCAZmVInB0/EisQJ5G6+/WOzOPFmdWIddcUxJ7vg/hrbYtfpebv8p1foViOai4rLiTGmyh7LSYi1tUVO4cyz6njpVybrcxNL0SxrucjHZ+NcFzA3iMMJEIzTbnr9edLSR5aZa1f26v024euwSXYsSrE0uA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3nosqq3XP0IR9gTvFyRz/3NvnqOuUs1DaMDfFLrAb98=; b=LPXCgeIosDDDr20Uq0CR/Nz2N7hTFTFnwi6tIk2ie9LRTzmTGrU5DZ4VLie3+6ehfI4Zxs7D97o8FrtHg7hRHcQmNJZ7F9AjpVC1ZLeFhRmPvKRr2vQjue9njQ2Wi6oF6l9mympalRSoZadtMQvlIpb0LUNG6sDSfIot0fosECI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Received: from CH3PR12MB9079.namprd12.prod.outlook.com (2603:10b6:610:1a1::9) by SJ1PR12MB6171.namprd12.prod.outlook.com (2603:10b6:a03:45a::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.35; Mon, 16 Oct 2023 15:06:10 +0000 Received: from CH3PR12MB9079.namprd12.prod.outlook.com ([fe80::3120:8014:c770:9f8f]) by CH3PR12MB9079.namprd12.prod.outlook.com ([fe80::3120:8014:c770:9f8f%7]) with mapi id 15.20.6863.047; Mon, 16 Oct 2023 15:06:10 +0000 Message-ID: Date: Mon, 16 Oct 2023 16:06:04 +0100 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 06/11] gdb: Use std::string_view instead of gdb::string_view To: Tom Tromey Cc: gdb-patches@sourceware.org References: <20231013144418.3180617-1-lancelot.six@amd.com> <20231013144418.3180617-7-lancelot.six@amd.com> <87il78x49e.fsf@tromey.com> Content-Language: en-US From: Lancelot SIX In-Reply-To: <87il78x49e.fsf@tromey.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: FR4P281CA0166.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:b7::17) To CH3PR12MB9079.namprd12.prod.outlook.com (2603:10b6:610:1a1::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH3PR12MB9079:EE_|SJ1PR12MB6171:EE_ X-MS-Office365-Filtering-Correlation-Id: c71226e1-1685-4703-6b9b-08dbce596e14 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IClhT7XQhOogU98cwrYcDToePlvPplXJ3DMONNBWoodqU1t55OeMjatm3koedSc5g9aq8xaY1UmvO6iWnPrLIND9YwbjmNf+QbBTvU2Vzwhb8lMI6baVMEiTERKSnEmTWUkoeB7EcXLPgdKYDq7EwHOcVDA+vYB8Jqw5KGSs1T+yU3ig+lzvGSTcmaNH/1p7iGADKgDTGzIHUgp5TE/tu3AUPQMnLuj19oAXxXyYLQ40sSDp2pjaHmzrhgZC6zS9XC1740JMjSKTeq+ceQxGTOBv7KQLOL1xb4uShUHgT5iocZfsZ/fuQUAd0wMdFs+X6IRW12o8rsMPK/kAEgAJQ6qOjRL+cbE9Rv9Zace2K0cYWXAsIyGgDxG64INnkyVsFGE5ooUjTQyS0pZCtafgDklu6XJjURWkUdVence2tFSw2OrIYg+M3nPll4KmANeK1o8pdyn2AZ1f4FQCuN3Qvq2tMC9dZ1ev/nqtwDz6a3VgrgzDIjd3jRI7frHthqFknG1JEhhCwuTFXw07xBsCLvqKvxR/dkq8n0AG0exNCqbj34z0Ld7rYat3XWmYJ5I+HFQbX30i69nzCBLuKQtCC12dYgX86K0cNVUM+68uEPOkWTMyq/8WqDozPtcpNNf20LnrPhmkymyLo5+AHec61A== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR12MB9079.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(366004)(346002)(376002)(396003)(136003)(230922051799003)(64100799003)(1800799009)(186009)(451199024)(66556008)(66476007)(6486002)(478600001)(66946007)(6666004)(6916009)(26005)(41300700001)(6506007)(2616005)(53546011)(316002)(6512007)(8676002)(8936002)(4326008)(2906002)(5660300002)(36756003)(86362001)(31696002)(83380400001)(38100700002)(31686004)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MVk3YjJ6M3lGc0xTMHhpcS9WaTN4cGdqMkkvZHJFdDRtOVNZcXVKWVdZbmhS?= =?utf-8?B?dnFMSHl1c0g2K2NvdlhiZU16eklSQkpIUnhFbUxCbWxNK01mTkVjck1ONVI2?= =?utf-8?B?ZWRmdXFtcGx1OVlFK3FuU3AxRTB0WTVQYVZudjlpRzYwWWl4ckVBbDIwbnpS?= =?utf-8?B?TmdmL2VvN1NtSElnZFZDRUlVclByQUs5UlBYSFFZTVo1OHgwaUttMFBHblBp?= =?utf-8?B?UDRSbXMwNnFnMTZSTU94V2o3VWFJa2g2UmRMQjdEUlVLNHFMWi9rQTZ5QXlj?= =?utf-8?B?bU83VzlXQk9KY1lXdmt1RkV4aTBIQXBTeEFHQWRWL01LQzc4QzdOSmJBbW0y?= =?utf-8?B?ZHgvMFVmeks4OXR1VXJqdk8yam1EL1RiSHZ3N3RxZUtFbHltdXo4WUtrbmpL?= =?utf-8?B?cXo2M1RkdU1Wc1c4VFJoaXkrbzhOY3BpenhzYTVyZ20vbzFuWGgxZmE4OWNu?= =?utf-8?B?Q2FyTjFkRzFVb2l3QzJtUXI5emRMVFJkS3ZVY3ltSWNkTzdRQnZSV3czM1Fu?= =?utf-8?B?YnNYWU1HVmxOYzI5bDRhTlBJc2hWWkNxM2xQU2dWeVQwVStDRGxvS0dzaVVw?= =?utf-8?B?b3pRQVN5ZysvWGJ4UG1FYVpmdm5wci9IVmJRQ2RMUDZuajg0VGJBeEpuYVJ0?= =?utf-8?B?MnpZckdSZVBlT0dIajVqZFVrd0s4dnViNkZiQS9tYVpkWnlNcnNHdElkWnc2?= =?utf-8?B?UUI2cXhLMkZaV2dwc01BdjhEQnZZaEhPbEhLV1l1b09YOXcxNUozMkpNR0lV?= =?utf-8?B?ZE15UGMzL3gxUUlUQVBzRHhhd1FHQXZwQnF1aWhtRE56ZnYzTmp2UnAvOXB4?= =?utf-8?B?a243bWZjSnNkQTFUdkJFVHpJNjBXa3FLUEozVUlkVE9BVSthZ0YwQU1vb1NI?= =?utf-8?B?eWNORWVQQjRKWk9nZVJ5eE8xalYrRGhQSE5sczIzTmM5VUVkbEhmRFBkbWJl?= =?utf-8?B?T1pmdmVBQWJEamtsSXU5UktQOWR1TFBFSStLd3I4Wm56czhySTFHMVRVRU1n?= =?utf-8?B?R2QycEg4ZGFWR3FrUmVXZTdZRHUzUk9qbDgySWhLdUlMUzVOWCtnbjgwV3FV?= =?utf-8?B?cmRGV08zRE04U0x3N0RqcTExRzBaWkQwcTBuMnpieHNONFg2anh0cVRleGln?= =?utf-8?B?WTk0VkFNajF0TlpIdlo4WEpjRWNnU2l4TFBzSks2YjNIZnpaVzVhWlg0T05H?= =?utf-8?B?YkpMd1VCWmdyNUY1UWdOQUs4VjM4TExoTStOeWd6Ym9yK0s2NHpTR2NMRW1N?= =?utf-8?B?L29WTFdzNzk3R21mcHdURnhmRGVPR3h6Z2hNRWJyK0s4eGxUbTR5bHlJRG0z?= =?utf-8?B?TC9NK2l2ZHdiODUzT1ltQ0FwMTFmRlVOczZEdnlpSitpWktHNVJUdXlCWFFm?= =?utf-8?B?TGhxbGNDMElVUjQzOWZuV3dMUmRUK1RaU0tTRjEyN2pwV3BVVnVTNzlIaXZ4?= =?utf-8?B?MTBIcEdQOXdweGI2T2ZNYkE4b0Izdko2TFl2Z0czcEROTGZPNjRmT20rWjBU?= =?utf-8?B?cG9jSy83WCtMS0l5cTNncytnakdsTnpmOTl3UEd2ZXltOGl2bkQ3cHBKQWlL?= =?utf-8?B?U3RkOExydFdacERQbGJralQ3TkgwdFhwVjJUeDk5SlJaNjZpcmhJMzBGQm9Z?= =?utf-8?B?dWdiN09DQk5lRWgyeCtCeVV0LytuRjk0S01JT1FBUit6bFZISGZXTG95RVc1?= =?utf-8?B?MHJqNjd4R3pHV1cxR3hnKzRMTU16RGRCR2hnUmNZQmpvK2RrdzJzeEcxRUsv?= =?utf-8?B?SktyUElvcEIxdk1sNGRzb0VQbjIyNHdEZDlwTWtGVml6aTVqOXVyYmRkampV?= =?utf-8?B?TXBkb1BJdkR4WkRtVkRIa2lMNDU0TnN1L2UrM1JGNjZrYnA0UW52NU9YV3U1?= =?utf-8?B?ZndjME0xVzF3YkVGa2s4TndoallRbmRyWWZqM2F4WlJSaWR4bjU2YjJLdWJh?= =?utf-8?B?eVVuelpwdGd4TWRqTlhFVER0NGZLR1FnU3BWcjRLTTlKbXpHczZtZmtUcDkv?= =?utf-8?B?eks3WXp2aHNPZi9laGkvZ1FKdlQ3eUlZV0Y3Wm81VnBmNEFzWW13elE4dUFG?= =?utf-8?B?U2w1ZGV5bEI3RXF0T2tIQUhzWlNhck12NkpJcGgweEdaUnB6MFlTVWFtNFk3?= =?utf-8?Q?nOwYXAMzkw8/dZmoOPfg6sRMo?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: c71226e1-1685-4703-6b9b-08dbce596e14 X-MS-Exchange-CrossTenant-AuthSource: CH3PR12MB9079.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2023 15:06:09.9751 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: HLLxp4K46X3G8uZPfDCF33i/Vx9dpATgv6ZQUrycYFRqg4inl0QULBzW+rpWTxFLcMLX9y9ZxGvlq2Qu/49P9A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ1PR12MB6171 X-Spam-Status: No, score=-10.2 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_SPF_HELO,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On 14/10/2023 22:50, Tom Tromey wrote: > Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding. > > >>>>>> "Lancelot" == Lancelot Six writes: > > Lancelot> Given that GDB now requires a C++17, replace all uses of > Lancelot> gdb::string_view with std::string_view. > > Lancelot> This change has mostly been done automatically: > Lancelot> - gdb::string_view -> std::string_view > Lancelot> - #include "gdbsupport/gdb_string_view.h" -> #include > > Lancelot> The implementation and tests of gdb::string_view are unchanged, they will > Lancelot> be removed in a following patch. > > IIRC there are some spots using gdb::string_view that construct one with > nullptr, which isn't allowed by std::string_view. Maybe a test run > using the libstdc++ debug mode would detect this? > > Tom Hi, It looks like libstdc++'s debug mode won't catch this, but this leads to a segfault on my system, so I am fairly confident with the testing. That being said, I went through the patch again. I think one use can be a problem (but is not exercised by the testsuite), and one might be worth adding an assertion, just in case. I have added the following locally and am extending the commit message. It will be in a V2, but I'll wait for other comment (if any) before sending it. Best, Lancelot. --- diff --git a/gdb/tui/tui-io.c b/gdb/tui/tui-io.c index 83218dc4797..78bafec38ca 100644 --- a/gdb/tui/tui-io.c +++ b/gdb/tui/tui-io.c @@ -1197,7 +1197,10 @@ tui_getc_1 (FILE *fp) Compare keyname instead. */ if (ch >= KEY_MAX) { - auto name = std::string_view (keyname (ch)); + std::string_view name; + if (const char *name_str = keyname (ch); + name_str != nullptr) + name = std::string_view (name_str); /* The following sequences are hardcoded in readline as well. */ diff --git a/gdbsupport/format.h b/gdbsupport/format.h index 5330bbe361e..26e327a60e8 100644 --- a/gdbsupport/format.h +++ b/gdbsupport/format.h @@ -56,6 +56,7 @@ struct format_piece argclass (argc), n_int_args (n) { + gdb_assert (str != nullptr); } bool operator== (const format_piece &other) const