From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on2078.outbound.protection.outlook.com [40.107.15.78]) by sourceware.org (Postfix) with ESMTPS id 8F2A33858CDA for ; Fri, 30 Dec 2022 13:14:11 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IhMTllWZE3EBALSZQKtCL/ZSomSdv0Nog4BrQMpCP/I=; b=rNI60k1Y6js8zNJeKLre/wSrbWWJnh7/ON3JPfv4JJClcutv73t+22kuolZo6ZXZBMCAMsiZFLX03Qa5Fx9jWmZxxcrMv/ByfrCT5LId347i4BC86L5hLHbfTry4qPwoegi8oETnjwrNuRUzSFTquq2xXrszBuaI19POoviZ3eU= Received: from AM6PR10CA0001.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:209:89::14) by DB4PR08MB8053.eurprd08.prod.outlook.com (2603:10a6:10:38a::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5966.17; Fri, 30 Dec 2022 13:14:05 +0000 Received: from AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:89:cafe::65) by AM6PR10CA0001.outlook.office365.com (2603:10a6:209:89::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5966.18 via Frontend Transport; Fri, 30 Dec 2022 13:14:05 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT005.mail.protection.outlook.com (100.127.140.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5944.17 via Frontend Transport; Fri, 30 Dec 2022 13:14:05 +0000 Received: ("Tessian outbound b1d3ffe56e73:v132"); Fri, 30 Dec 2022 13:14:05 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 14fa41054ab38964 X-CR-MTA-TID: 64aa7808 Received: from 35721c4570fc.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id A18B45D7-1D01-44BE-8D0D-F794A0A0CFA4.1; Fri, 30 Dec 2022 13:13:59 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 35721c4570fc.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 30 Dec 2022 13:13:59 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DUZIb2BejmL5+aYXdbxxBlTNEWSzY3HRI2bQSi6IduuKoPhUDxtULA8D4eFh8va41TJiqRx/XRnAe3yHthzwAGCo2s6y8CDQ3piSlU4igt3f7Rz4Etw8bSi7fmJyQ6uCUj0yXX2C/WMmgVSz/FiPFvCthkN9TCrn/CP1XSzgFHIJ0HxhojLoSuyJq4DVKeFIqNq2qiQyN/SbZZgsww0C95d5/4Gov34aHiCapaDPRtW1ug/ZwtD1cDl38imc+0WOguQDpOPitXmNuDXSGH9XrBB1YT6b1NHks3A0LLWPeJS08sDiHyAJdK6qBDZc96d+XJCV4GXKaQrH64nZTEs12Q== 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=IhMTllWZE3EBALSZQKtCL/ZSomSdv0Nog4BrQMpCP/I=; b=EVV+MqXysxhkzS89KEuTGpVTV3Jyk1A1HSgBHEZhgTlpUoRdKPZ9WJBkFI6P2imfnIVEPRUBi7uTJ/Y2PCizzkNxqdH3c52Cd77qxi2OzrcKpTqRrvMjUFPs1h+ybRjmPEaw+7OQuNLXiHB96FGAb4WclKfcvcDtmTmCUSPuzC97AZsNz0GoqAOJ+Z9VXEQQbvDw05nKx8vDg1ZVg3+GoWmL/qlhkf7R1INtsIc5WjAg6fPbXXGePIe/pS+gop6chKc7nV+n/moqe0W7f8jlTVeemAIdfjewB4Y/9kF5Tj1q5XTaZOdpzjeToM+lerfnQ34ZX8hoQR+PN1meOVWmhA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=IhMTllWZE3EBALSZQKtCL/ZSomSdv0Nog4BrQMpCP/I=; b=rNI60k1Y6js8zNJeKLre/wSrbWWJnh7/ON3JPfv4JJClcutv73t+22kuolZo6ZXZBMCAMsiZFLX03Qa5Fx9jWmZxxcrMv/ByfrCT5LId347i4BC86L5hLHbfTry4qPwoegi8oETnjwrNuRUzSFTquq2xXrszBuaI19POoviZ3eU= Received: from PAWPR08MB8982.eurprd08.prod.outlook.com (2603:10a6:102:33f::20) by PAWPR08MB9829.eurprd08.prod.outlook.com (2603:10a6:102:2e6::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5966.17; Fri, 30 Dec 2022 13:13:57 +0000 Received: from PAWPR08MB8982.eurprd08.prod.outlook.com ([fe80::66e4:4940:d096:4f7]) by PAWPR08MB8982.eurprd08.prod.outlook.com ([fe80::66e4:4940:d096:4f7%8]) with mapi id 15.20.5966.017; Fri, 30 Dec 2022 13:13:56 +0000 From: Wilco Dijkstra To: "Alejandro Colomar (man-pages)" CC: 'GNU C Library' , =?iso-8859-1?Q?Cristian_Rodr=EDguez?= Subject: [manual]: rawmemchr(3) and UB Thread-Topic: [manual]: rawmemchr(3) and UB Thread-Index: AQHZHEzbJ0cAmT9Si0CvWuPC8X1cyw== Date: Fri, 30 Dec 2022 13:13:52 +0000 Message-ID: Accept-Language: en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: PAWPR08MB8982:EE_|PAWPR08MB9829:EE_|AM7EUR03FT005:EE_|DB4PR08MB8053:EE_ X-MS-Office365-Filtering-Correlation-Id: 9c899d1c-2773-42d0-7412-08daea67ba35 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 3oh2em0n7hzFGacs4Tlb01Tx9MCCU8WS8VU6Vbs8gnGs5wkDwf4PENeXLApEbTMBHRF/HGEg0ar24JXdTRpcnAyVI/K0G4xFVv5vviArwRlhiVhEpHDyVAr95AQjFYg8JV8sAxOkM6L/Ifcf3ZKz5kI2HW9Mo1TdNjcbnQS6Wd5n3FHqaK+rbYc5+89yKPgzsTcE3Nmvy/p4OTFsEsAltXFa4WOadf4GcXfjXpDe1rZtusS/hBDT+riXAOGjbeKjX3WxOdLEXh6Y4HirV1yQm/jWy1v+oLykom/2aoubVDq+4JLPJ5pwBex1T+OJ0O+efbM/uIMkkmwShACm/X/rd6meRSOz8lzvmOXC3lvAuTQHUvJYOWiLPbIijXt9XHSJKY5pQVhjex5AoPpR3QNHrSdC4Z6NFu1IafgMDCZp3iIKPeBU7jhgE65/ifA/sXitX8vw8PCFInuHJGV0MSb4pSc2fnzOScWmL88qWvtEeMAkcF4ytEf+Iu6LZank8ROpFHj3Dk0fntodnDS51Hn0AOs56kO6k1XOCO0Q8QTA5MhmvDYBYorf+eg5cZCydczKJxex6Q47D0T3skG9TqVDU7E0Wvo0/0joW5w29/5zZ/7cxmJwQ2+4CtJ0YbNIx8pjWvSRYyGfP0AWAjsWpLivsWsUm8PZzFeq8TkgTjM4Vc1ifFjEASlJCtWReU77TjXSvnWZdq0xXbu5OFxSQMiIKw== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAWPR08MB8982.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(136003)(376002)(39860400002)(396003)(346002)(366004)(451199015)(54906003)(6916009)(316002)(6666004)(7696005)(6506007)(478600001)(55016003)(33656002)(9686003)(186003)(71200400001)(26005)(86362001)(41300700001)(38070700005)(66446008)(66476007)(8676002)(66556008)(66946007)(64756008)(38100700002)(76116006)(122000001)(4326008)(5660300002)(2906002)(52536014)(4744005)(91956017)(8936002);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9829 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: e99e8dfe-e3f8-4d1c-2b24-08daea67b2c4 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KJJxVI03j+uOxMieIRi0PsVCdzA6+woS+vUn0svbolfWE6Zf0fOmRA6h6sDcf12QgNx20Aik+dS50Sx9eGVPOm5LXhdtA/+bAx8HI+7fcJOY9UVxklER3hCyupr5oMr0XVWSxJB+3uids4oXy1AjG6VTKhHLHIwkZHFeBkvu4+DJhqYeZJ466KOncrIRd+MjGoEVUC1dxJy3Qe8/d6F1TONvsSyTWTWBdPQNKgLVsbw81WWr7nC9xU2blGneH94mpZZxng2ccxhmH/jeXJWBJ2avJL71k1s1sGmXU1EASMHRb3pTBaRsm8xsU9v2WonL7llGovnk4dfzu2ZPW0OXjRU39NbGSFfxFhv0IsXlUzntm2gl49V3NQwn/hxrpQf/8mm+abqyrbwstcziZFMwPgjjepwQ7gz7WERDNESkDxkqE4RZ/pbQVDSqQbUMyox5fDJFwVNFI4RMrMeer2gfW7htZYgjmxq4DNAEREcqDT1hyt29xk5kzUawqfPhU5kHFlBZdh+YBqOgVUZUins7d0hG+pJHr+fn5f1F3SrWddyieqRVKlIEdfSsIfYM/+gkds29a4af/mGhWFIHFi/QaiorqT7S8azbu4USsD9X6xbfsxaTT5LN0cTO1ZIzDt8RgCHWkp7l5UGO4raEZqglgXpyGqfkmp4qoYIygr3MVR8= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230022)(4636009)(136003)(376002)(39850400004)(396003)(346002)(451199015)(46966006)(36840700001)(9686003)(26005)(186003)(336012)(52536014)(33656002)(478600001)(6666004)(82310400005)(107886003)(47076005)(7696005)(36860700001)(86362001)(6506007)(6862004)(8936002)(356005)(41300700001)(55016003)(40480700001)(2906002)(54906003)(316002)(4744005)(82740400003)(70586007)(81166007)(70206006)(5660300002)(4326008)(8676002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Dec 2022 13:14:05.2317 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9c899d1c-2773-42d0-7412-08daea67ba35 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT005.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB8053 X-Spam-Status: No, score=-5.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,KAM_DMARC_NONE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,UNPARSEABLE_RELAY autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi Alex,=0A= =0A= > It seems I misunderstood your email. I've seen that glibc implements =0A= > rawmemchr(3) in terms of strlen(3) and memchr(3). So it seems better to = just =0A= > not implement this function in my library, and optimize strlen(3) directl= y. The =0A= > non-'\0' case seems useless, so probably not worth this function unless I= see a =0A= > use for it.=0A= =0A= The idea is that compilers should treat it like mempcpy, bcopy etc and repl= ace=0A= all uses with standard strlen/memchr. GCC/LLVM don't do this yet for rawmem= chr.=0A= =0A= Since it is not in any standard and there is no benefit of having it, we sh= ould=0A= obsolete this function along with all the other GNU extensions.=0A= =0A= Cheers,=0A= Wilco=