From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 08782143C54 for ; Thu, 18 Jul 2024 20:33:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721334792; cv=none; b=LF4O8E6kB5YKKb1QNNIiB/mUPZjFWdmlgCSufuXn3N6AJ6WELWx/Ccfuy6JUfgIJIHEcPQnFvdsmM+cOE0CdVq0jMWhjj+kQI0WXj6dYtZEQnjUDWA/yIOUzqRB3o1XvLyKF5bTO7EpKJ7T8GWem6WvD1XsstywsvVPVULDIMMw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721334792; c=relaxed/simple; bh=Q+jr7oEdpGHHnNFbEjrQs+l9Au6fLu+LBNwg3dK4NnU=; h=Date:From:To:Cc:Subject:Message-ID:MIME-Version:Content-Type: Content-Disposition; b=kOU09KlOIii0tDeSkZEUUbJV/9Ehlj66oWsLFxcbWl0+BFuhRZuGrqnI7qc8Nkzta622tLdNN2t05jkcLF7eCof1ygUl2Uy3Bp9Ur2jB9m+51tzazNxqB6D24l4qLbQbvi/NnZN3S4eP4VLSv3WaB5fcW6jZUg60hB5XYSdmEwk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=noln+UgT; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="noln+UgT" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 87B90C4AF09; Thu, 18 Jul 2024 20:33:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1721334791; bh=Q+jr7oEdpGHHnNFbEjrQs+l9Au6fLu+LBNwg3dK4NnU=; h=Date:From:To:Cc:Subject:From; b=noln+UgTwaFQc8zZqmSdjHNFEYwxMnYm1XgtD3s9NGTTB2dTfJ8jXJ9sxFXhMYkIS jZVMo/shwSQN2qFemlicMygE0twvDjF+I+yjrOYTQl2cVazqqBpKMWKVcs8H3YUb9f CiZncU+5R+4/Kyn4JPSUn+xML13oBDbN5MRls1vZvcL4p8ebHTsodJD1V/JhqzPYrI Eh76NmGNPFrKug9T+EpxB69JltcFsiO6KXel4A5o83/58oDI/gqn8yy7786HsWns/i h+7drVnQt+NZDbrhbolE0bfQUMunABR2KcQzq/r5naYgzfKczxPoUiAvjVwZIHXuJX RZzW26xSijSKQ== Date: Thu, 18 Jul 2024 22:33:07 +0200 From: Alejandro Colomar To: bug-gnulib@gnu.org Cc: Alejandro Colomar , Paul Eggert , Bruno Haible , =?utf-8?B?xJBvw6BuIFRy4bqnbiBDw7RuZw==?= Danh , Eli Schwartz , Sam James , Serge Hallyn , Iker Pedrosa , "Andrew J. Hesford" , Michael Vetter , liba2i@lists.linux.dev Subject: [PATCH v1] xstrtol: Remove dead code Message-ID: <20240718203147.47143-2-alx@kernel.org> X-Mailer: git-send-email 2.45.2 Precedence: bulk X-Mailing-List: liba2i@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="rku3rthl3h6bslbx" Content-Disposition: inline --rku3rthl3h6bslbx Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable From: Alejandro Colomar To: bug-gnulib@gnu.org Cc: Alejandro Colomar , Paul Eggert , Bruno Haible , =?utf-8?B?xJBvw6BuIFRy4bqnbiBDw7RuZw==?= Danh , Eli Schwartz , Sam James , Serge Hallyn , Iker Pedrosa , "Andrew J. Hesford" , Michael Vetter , liba2i@lists.linux.dev Subject: [PATCH v1] xstrtol: Remove dead code MIME-Version: 1.0 strtol(3) has a limited set of possible states: - The base was invalid. - return 0 - errno =3D EINVAL - endp is not set We cover this case with the assure() call, before strtol(3). - No conversion was performed. - return 0 - errno may be EINVAL, or may be unset. - *endp =3D=3D s We cover this case with the 'if (*p =3D=3D s)' check. - Conversion performed with extra trailing characters. - return any number - errno is not set - *endp !=3D s - **endp !=3D '\0' We let this fall through. - String fully converted. - return any number - errno is not set - *endp !=3D s - **endp =3D=3D '\0' We let this fall through. - Overflow - return LONG_MAX or LONG_MIN - errno =3D ERANGE - *endp !=3D s We cover this with 'else if (errno !=3D 0)' The condition '*endp !=3D s && errno !=3D 0 && errno !=3D ERANGE' is unreachable. The only errno possible if '*endp !=3D s' is ERANGE. Fixes: 790855e18a1d (2003-10-14, "Handle invalid suffixes and overflow inde= pendently, so that ...") Cc: Paul Eggert Cc: Bruno Haible Cc: =C4=90o=C3=A0n Tr=E1=BA=A7n C=C3=B4ng Danh Cc: Eli Schwartz Cc: Sam James Cc: Serge Hallyn Cc: Iker Pedrosa Cc: "Andrew J. Hesford" Cc: Michael Vetter Cc: Signed-off-by: Alejandro Colomar --- Range-diff against v0: -: ---------- > 1: 1af702673f xstrtol: Remove dead code lib/xstrtol.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/xstrtol.c b/lib/xstrtol.c index 575c16d45f..5d10ce041e 100644 --- a/lib/xstrtol.c +++ b/lib/xstrtol.c @@ -110,10 +110,8 @@ __xstrtol (const char *s, char **ptr, int strtol_base, else return LONGINT_INVALID; } - else if (errno !=3D 0) + else if (errno =3D=3D ERANGE) { - if (errno !=3D ERANGE) - return LONGINT_INVALID; err =3D LONGINT_OVERFLOW; } =20 --=20 2.45.2 --rku3rthl3h6bslbx Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEE6jqH8KTroDDkXfJAnowa+77/2zIFAmaZfAMACgkQnowa+77/ 2zKFXA//V9Pb2Tckq6ohgqikjBFzxmp501nGDLlKjfLcMwXYv9VP4O1ZtjmbPLJ8 /WY7e4SAYl2LAWvoh7dwZaj1Lcs0fFZmLJoU8D+dCotAcp7hZGLgaeuyZ3ApWYYh wRR5gkHwJ2W/SarFsP2gOz1QH6+Ae4066OTL7U86auuEw9NSVwtnP0XfrAuFtVym EZ4DoVDFLxv0GnbpiI7mWpHhsEKSk/5CnlQ1LelmqYGmBPs9HfZeZ+MC/lnG38EQ QZeddkw7hUXt5akxQHaMZ82M6kJGQ01eDqKom6pt0a6NdRu+2hBWsoCJ+uvq+CRa 8KgP+Kd+t2YnD+DvAxBrbwIaEeOxzKc6OGExa9ZXyc5azCXJ76DAZtVtKUCerqaO EzaZDtL6LfNQ68O8qiB7SYkI1Bci1n5y1TxmGJUDoq4WMwJWPktYPzuiUwx+P4tP p5BDHqLxeCgt06MIk/R0gqpEWNhBlf2hT0bulyE6Ja6VwWVOvm0eI7Uh4srgPPiB EIdhPBOH03vXdWSPqLlyqKBagxq8oHI/u9Y6Cd/eI2AZzQ6VGAEoFdxD2Bj5FcOn xZdvjHcw8mhsZlo6t+cBH+pC29QZdO92+HaxgEDOpS3lu1Dezq/rM3ADOxtpzgBH fwj2Qulok46raNy9ZTZChf7Gwa66LcWuprfghqVR6KNsuCTtkZw= =mLcn -----END PGP SIGNATURE----- --rku3rthl3h6bslbx--