Rollup merge of #137207 - petertodd:2025-add-track-caller-to-duration-div, r=jhpratt

Add #[track_caller] to Duration Div impl

Previously the location of the divide-by-zero error condition would be attributed to the code in the rust standard library, eg:

	thread 'main' panicked at /home/user/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/time.rs:1172:31:
	divide by zero error when dividing duration by scalar

With #[track_caller] the error is correctly attributed to the callee.
This commit is contained in:
Matthias Krüger 2025-02-22 01:01:40 +01:00 committed by GitHub
commit 5400270279
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1168,6 +1168,7 @@ impl Div<u32> for Duration {
type Output = Duration;
#[inline]
#[track_caller]
fn div(self, rhs: u32) -> Duration {
self.checked_div(rhs).expect("divide by zero error when dividing duration by scalar")
}
@ -1176,6 +1177,7 @@ impl Div<u32> for Duration {
#[stable(feature = "time_augmented_assignment", since = "1.9.0")]
impl DivAssign<u32> for Duration {
#[inline]
#[track_caller]
fn div_assign(&mut self, rhs: u32) {
*self = *self / rhs;
}