[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CANiq72kGzB2CdGMcaftfg2eYvu_rBtH2_gxqVt7KE7RQxCgz8Q@mail.gmail.com>
Date: Thu, 20 Mar 2025 21:21:39 +0100
From: Miguel Ojeda <miguel.ojeda.sandonis@...il.com>
To: Andreas Hindborg <a.hindborg@...nel.org>
Cc: Miguel Ojeda <ojeda@...nel.org>, Alex Gaynor <alex.gaynor@...il.com>,
Boqun Feng <boqun.feng@...il.com>, Gary Guo <gary@...yguo.net>,
Björn Roy Baron <bjorn3_gh@...tonmail.com>,
Benno Lossin <benno.lossin@...ton.me>, Alice Ryhl <aliceryhl@...gle.com>,
Masahiro Yamada <masahiroy@...nel.org>, Nathan Chancellor <nathan@...nel.org>,
Nicolas Schier <nicolas@...sle.eu>, Luis Chamberlain <mcgrof@...nel.org>, Trevor Gross <tmgross@...ch.edu>,
Adam Bratschi-Kaye <ark.email@...il.com>, rust-for-linux@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-kbuild@...r.kernel.org,
Petr Pavlu <petr.pavlu@...e.com>, Sami Tolvanen <samitolvanen@...gle.com>,
Daniel Gomez <da.gomez@...sung.com>, Simona Vetter <simona.vetter@...ll.ch>,
Greg KH <gregkh@...uxfoundation.org>, Fiona Behrens <me@...enk.dev>,
Daniel Almeida <daniel.almeida@...labora.com>, linux-modules@...r.kernel.org
Subject: Re: [PATCH v8 5/7] rust: str: add radix prefixed integer parsing functions
On Thu, Feb 27, 2025 at 3:39 PM Andreas Hindborg <a.hindborg@...nel.org> wrote:
>
> + // SAFETY: We checked that `val` will fit in `Self` above.
> + let val: Self = unsafe { val.try_into().unwrap_unchecked() };
This is wrong -- `val` can be the maximum, and thus it does not fit
since it is 2's complement, even if later the complement would.
In fact, it is caught by the doctest when run with debug assertions enabled:
/// assert_eq!(Ok(-128), i8::from_str(b_str!("-128")));
We try to put 128 into `i8`, which of course does not work...
Cheers,
Miguel
Powered by blists - more mailing lists