Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
0dc233f
point to Compiler team docs on Forge
tshepang Sep 6, 2025
1806a82
remove confusing parts of sentence
tshepang Sep 8, 2025
755db7f
sembr
tshepang Sep 8, 2025
cb0e26f
fix markup
tshepang Sep 8, 2025
94da520
readability
tshepang Sep 8, 2025
8c324de
Merge pull request #2585 from rust-lang/tshepang/sembr
tshepang Sep 8, 2025
a5575f8
Fix broken Microsoft URL missing slash
ali90h Sep 8, 2025
808595e
Merge pull request #2586 from ali90h/fix-microsoft-link-broken-url
Noratrieb Sep 8, 2025
096ae06
glossary: add entry for rustbuild
lolbinarycat Jul 22, 2025
196b49a
glossary(rustbuild): reword according to code review
lolbinarycat Sep 10, 2025
82ff002
Add missing documentation for running tests with GCC backend
GuillaumeGomez Sep 10, 2025
76c4d68
Merge pull request #2516 from lolbinarycat/patch-4
tshepang Sep 10, 2025
d8f0842
docs: typetree in autodiff
KMJ-007 May 13, 2025
ff59107
Merge pull request #2385 from KMJ-007/master
ZuseZ4 Sep 11, 2025
d588c11
Restructure the docs
Kobzol Sep 11, 2025
7a4b728
Rename "crashes tests" to "crash tests"
fmease Sep 12, 2025
ddfd47a
Merge pull request #2588 from fmease/to-crash-tests
fmease Sep 12, 2025
ee63b07
Merge pull request #2584 from rust-lang/tshepang-patch-5
Noratrieb Sep 12, 2025
7b0b0bb
Clarify that backtick escaping doesn't work for `@bors try jobs`
Kobzol Sep 15, 2025
001f8e3
Update src/tests/ci.md
Kobzol Sep 15, 2025
3a14fb7
Merge pull request #2589 from Kobzol/ci-bors-backticks
Kobzol Sep 15, 2025
ee496f2
a valid state is achieved by passing the test suite
tshepang Sep 17, 2025
cea82e3
Merge pull request #2591 from rust-lang/tshepang-patch-5
Noratrieb Sep 17, 2025
b17213a
about-this-guide.md: improve a bit
tshepang Sep 17, 2025
66a84ef
Merge pull request #2592 from rust-lang/tshepang-patch-5
tshepang Sep 17, 2025
9819cea
Merge pull request #2587 from GuillaumeGomez/gcc-backend-missing-docs
GuillaumeGomez Sep 18, 2025
72b0291
Merge pull request #2580 from rust-lang/tshepang-patch-2
jieyouxu Sep 19, 2025
d887c57
Correct a misspelling of RUSTC_LOG
cammeresi Sep 21, 2025
a11333a
Merge pull request #2594 from cammeresi/spelling-20250921
tshepang Sep 21, 2025
5658b39
Prepare for merging from rust-lang/rust
invalid-email-address Sep 22, 2025
c3d3074
Merge ref '9f32ccf35fb8' from rust-lang/rust
invalid-email-address Sep 22, 2025
391a2ea
Merge pull request #2595 from rust-lang/rustc-pull
tshepang Sep 22, 2025
5dde557
constify {float}::total_cmp()
npmccallum Sep 6, 2025
62b2bd5
reduce overlong lines
tshepang Sep 22, 2025
45f891d
Merge pull request #2596 from rust-lang/tshepang/sembr
tshepang Sep 22, 2025
1e2594f
various improvements resulting from reading Testing with CI
tshepang Sep 22, 2025
70f3768
Merge pull request #2593 from rust-lang/tshepang/testing-with-ci
tshepang Sep 22, 2025
5e7d346
Update books
rustbot Sep 22, 2025
2d18c88
Fix a crash/mislex when more than one frontmatter closing possibility…
Teapot4195 Sep 22, 2025
819f8b0
Mutex/RwLock/ReentrantLock::data_ptr to be const fn
peter-lyons-kehl Sep 22, 2025
60f6012
add regression test for issue 146537
cyrgani Sep 22, 2025
c2e11d7
Rollup merge of #146818 - npmccallum:total_cmp, r=fee1-dead
matthiaskrgr Sep 23, 2025
f89d26b
Rollup merge of #146896 - tshepang:rdg-sync, r=tshepang
matthiaskrgr Sep 23, 2025
7d0c283
Rollup merge of #146898 - rustbot:docs-update, r=ehuss
matthiaskrgr Sep 23, 2025
f984966
Rollup merge of #146899 - Teapot4195:issue-146847-fix, r=nnethercote
matthiaskrgr Sep 23, 2025
bba509e
Rollup merge of #146904 - peter-lyons-kehl:140368_data_ptr_const_fn, …
matthiaskrgr Sep 23, 2025
6617536
Rollup merge of #146907 - cyrgani:146537-test, r=nnethercote
matthiaskrgr Sep 23, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion compiler/rustc_lexer/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -599,14 +599,16 @@ impl Cursor<'_> {
if potential_closing.is_none() {
// a less fortunate recovery if all else fails which finds any dashes preceded by whitespace
// on a standalone line. Might be wrong.
let mut base_index = 0;
while let Some(closing) = rest.find("---") {
let preceding_chars_start = rest[..closing].rfind("\n").map_or(0, |i| i + 1);
if rest[preceding_chars_start..closing].chars().all(is_horizontal_whitespace) {
// candidate found
potential_closing = Some(closing);
potential_closing = Some(closing + base_index);
break;
} else {
rest = &rest[closing + 3..];
base_index += closing + 3;
}
}
}
Expand Down
3 changes: 2 additions & 1 deletion library/core/src/num/f128.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1196,7 +1196,8 @@ impl f128 {
#[inline]
#[must_use]
#[unstable(feature = "f128", issue = "116909")]
pub fn total_cmp(&self, other: &Self) -> crate::cmp::Ordering {
#[rustc_const_unstable(feature = "const_cmp", issue = "143800")]
pub const fn total_cmp(&self, other: &Self) -> crate::cmp::Ordering {
let mut left = self.to_bits() as i128;
let mut right = other.to_bits() as i128;

Expand Down
3 changes: 2 additions & 1 deletion library/core/src/num/f16.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1175,7 +1175,8 @@ impl f16 {
#[inline]
#[must_use]
#[unstable(feature = "f16", issue = "116909")]
pub fn total_cmp(&self, other: &Self) -> crate::cmp::Ordering {
#[rustc_const_unstable(feature = "const_cmp", issue = "143800")]
pub const fn total_cmp(&self, other: &Self) -> crate::cmp::Ordering {
let mut left = self.to_bits() as i16;
let mut right = other.to_bits() as i16;

Expand Down
3 changes: 2 additions & 1 deletion library/core/src/num/f32.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1353,9 +1353,10 @@ impl f32 {
/// }
/// ```
#[stable(feature = "total_cmp", since = "1.62.0")]
#[rustc_const_unstable(feature = "const_cmp", issue = "143800")]
#[must_use]
#[inline]
pub fn total_cmp(&self, other: &Self) -> crate::cmp::Ordering {
pub const fn total_cmp(&self, other: &Self) -> crate::cmp::Ordering {
let mut left = self.to_bits() as i32;
let mut right = other.to_bits() as i32;

Expand Down
3 changes: 2 additions & 1 deletion library/core/src/num/f64.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1351,9 +1351,10 @@ impl f64 {
/// }
/// ```
#[stable(feature = "total_cmp", since = "1.62.0")]
#[rustc_const_unstable(feature = "const_cmp", issue = "143800")]
#[must_use]
#[inline]
pub fn total_cmp(&self, other: &Self) -> crate::cmp::Ordering {
pub const fn total_cmp(&self, other: &Self) -> crate::cmp::Ordering {
let mut left = self.to_bits() as i64;
let mut right = other.to_bits() as i64;

Expand Down
171 changes: 85 additions & 86 deletions library/coretests/tests/floats/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1246,104 +1246,103 @@ float_test! {
float_test! {
name: total_cmp,
attrs: {
const: #[cfg(false)],
f16: #[cfg(all(not(miri), target_has_reliable_f16_math))],
f128: #[cfg(all(not(miri), target_has_reliable_f128_math))],
},
test<Float> {
use core::cmp::Ordering;

fn quiet_bit_mask() -> <Float as TestableFloat>::Int {
const fn quiet_bit_mask() -> <Float as TestableFloat>::Int {
1 << (Float::MANTISSA_DIGITS - 2)
}

fn q_nan() -> Float {
const fn q_nan() -> Float {
Float::from_bits(Float::NAN.to_bits() | quiet_bit_mask())
}

assert_eq!(Ordering::Equal, Float::total_cmp(&-q_nan(), &-q_nan()));
assert_eq!(Ordering::Equal, Float::total_cmp(&-Float::INFINITY, &-Float::INFINITY));
assert_eq!(Ordering::Equal, Float::total_cmp(&-Float::MAX, &-Float::MAX));
assert_eq!(Ordering::Equal, Float::total_cmp(&-2.5, &-2.5));
assert_eq!(Ordering::Equal, Float::total_cmp(&-1.0, &-1.0));
assert_eq!(Ordering::Equal, Float::total_cmp(&-1.5, &-1.5));
assert_eq!(Ordering::Equal, Float::total_cmp(&-0.5, &-0.5));
assert_eq!(Ordering::Equal, Float::total_cmp(&-Float::MIN_POSITIVE, &-Float::MIN_POSITIVE));
assert_eq!(Ordering::Equal, Float::total_cmp(&-Float::MAX_SUBNORMAL, &-Float::MAX_SUBNORMAL));
assert_eq!(Ordering::Equal, Float::total_cmp(&-Float::TINY, &-Float::TINY));
assert_eq!(Ordering::Equal, Float::total_cmp(&-0.0, &-0.0));
assert_eq!(Ordering::Equal, Float::total_cmp(&0.0, &0.0));
assert_eq!(Ordering::Equal, Float::total_cmp(&Float::TINY, &Float::TINY));
assert_eq!(Ordering::Equal, Float::total_cmp(&Float::MAX_SUBNORMAL, &Float::MAX_SUBNORMAL));
assert_eq!(Ordering::Equal, Float::total_cmp(&Float::MIN_POSITIVE, &Float::MIN_POSITIVE));
assert_eq!(Ordering::Equal, Float::total_cmp(&0.5, &0.5));
assert_eq!(Ordering::Equal, Float::total_cmp(&1.0, &1.0));
assert_eq!(Ordering::Equal, Float::total_cmp(&1.5, &1.5));
assert_eq!(Ordering::Equal, Float::total_cmp(&2.5, &2.5));
assert_eq!(Ordering::Equal, Float::total_cmp(&Float::MAX, &Float::MAX));
assert_eq!(Ordering::Equal, Float::total_cmp(&Float::INFINITY, &Float::INFINITY));
assert_eq!(Ordering::Equal, Float::total_cmp(&q_nan(), &q_nan()));

assert_eq!(Ordering::Less, Float::total_cmp(&-Float::INFINITY, &-Float::MAX));
assert_eq!(Ordering::Less, Float::total_cmp(&-Float::MAX, &-2.5));
assert_eq!(Ordering::Less, Float::total_cmp(&-2.5, &-1.5));
assert_eq!(Ordering::Less, Float::total_cmp(&-1.5, &-1.0));
assert_eq!(Ordering::Less, Float::total_cmp(&-1.0, &-0.5));
assert_eq!(Ordering::Less, Float::total_cmp(&-0.5, &-Float::MIN_POSITIVE));
assert_eq!(Ordering::Less, Float::total_cmp(&-Float::MIN_POSITIVE, &-Float::MAX_SUBNORMAL));
assert_eq!(Ordering::Less, Float::total_cmp(&-Float::MAX_SUBNORMAL, &-Float::TINY));
assert_eq!(Ordering::Less, Float::total_cmp(&-Float::TINY, &-0.0));
assert_eq!(Ordering::Less, Float::total_cmp(&-0.0, &0.0));
assert_eq!(Ordering::Less, Float::total_cmp(&0.0, &Float::TINY));
assert_eq!(Ordering::Less, Float::total_cmp(&Float::TINY, &Float::MAX_SUBNORMAL));
assert_eq!(Ordering::Less, Float::total_cmp(&Float::MAX_SUBNORMAL, &Float::MIN_POSITIVE));
assert_eq!(Ordering::Less, Float::total_cmp(&Float::MIN_POSITIVE, &0.5));
assert_eq!(Ordering::Less, Float::total_cmp(&0.5, &1.0));
assert_eq!(Ordering::Less, Float::total_cmp(&1.0, &1.5));
assert_eq!(Ordering::Less, Float::total_cmp(&1.5, &2.5));
assert_eq!(Ordering::Less, Float::total_cmp(&2.5, &Float::MAX));
assert_eq!(Ordering::Less, Float::total_cmp(&Float::MAX, &Float::INFINITY));

assert_eq!(Ordering::Greater, Float::total_cmp(&-Float::MAX, &-Float::INFINITY));
assert_eq!(Ordering::Greater, Float::total_cmp(&-2.5, &-Float::MAX));
assert_eq!(Ordering::Greater, Float::total_cmp(&-1.5, &-2.5));
assert_eq!(Ordering::Greater, Float::total_cmp(&-1.0, &-1.5));
assert_eq!(Ordering::Greater, Float::total_cmp(&-0.5, &-1.0));
assert_eq!(Ordering::Greater, Float::total_cmp(&-Float::MIN_POSITIVE, &-0.5));
assert_eq!(Ordering::Greater, Float::total_cmp(&-Float::MAX_SUBNORMAL, &-Float::MIN_POSITIVE));
assert_eq!(Ordering::Greater, Float::total_cmp(&-Float::TINY, &-Float::MAX_SUBNORMAL));
assert_eq!(Ordering::Greater, Float::total_cmp(&-0.0, &-Float::TINY));
assert_eq!(Ordering::Greater, Float::total_cmp(&0.0, &-0.0));
assert_eq!(Ordering::Greater, Float::total_cmp(&Float::TINY, &0.0));
assert_eq!(Ordering::Greater, Float::total_cmp(&Float::MAX_SUBNORMAL, &Float::TINY));
assert_eq!(Ordering::Greater, Float::total_cmp(&Float::MIN_POSITIVE, &Float::MAX_SUBNORMAL));
assert_eq!(Ordering::Greater, Float::total_cmp(&0.5, &Float::MIN_POSITIVE));
assert_eq!(Ordering::Greater, Float::total_cmp(&1.0, &0.5));
assert_eq!(Ordering::Greater, Float::total_cmp(&1.5, &1.0));
assert_eq!(Ordering::Greater, Float::total_cmp(&2.5, &1.5));
assert_eq!(Ordering::Greater, Float::total_cmp(&Float::MAX, &2.5));
assert_eq!(Ordering::Greater, Float::total_cmp(&Float::INFINITY, &Float::MAX));

assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &-Float::INFINITY));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &-Float::MAX));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &-2.5));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &-1.5));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &-1.0));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &-0.5));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &-Float::MIN_POSITIVE));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &-Float::MAX_SUBNORMAL));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &-Float::TINY));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &-0.0));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &0.0));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &Float::TINY));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &Float::MAX_SUBNORMAL));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &Float::MIN_POSITIVE));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &0.5));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &1.0));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &1.5));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &2.5));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &Float::MAX));
assert_eq!(Ordering::Less, Float::total_cmp(&-q_nan(), &Float::INFINITY));
assert!(matches!(Float::total_cmp(&-q_nan(), &-q_nan()), Ordering::Equal));
assert!(matches!(Float::total_cmp(&-Float::INFINITY, &-Float::INFINITY), Ordering::Equal));
assert!(matches!(Float::total_cmp(&-Float::MAX, &-Float::MAX), Ordering::Equal));
assert!(matches!(Float::total_cmp(&-2.5, &-2.5), Ordering::Equal));
assert!(matches!(Float::total_cmp(&-1.0, &-1.0), Ordering::Equal));
assert!(matches!(Float::total_cmp(&-1.5, &-1.5), Ordering::Equal));
assert!(matches!(Float::total_cmp(&-0.5, &-0.5), Ordering::Equal));
assert!(matches!(Float::total_cmp(&-Float::MIN_POSITIVE, &-Float::MIN_POSITIVE), Ordering::Equal));
assert!(matches!(Float::total_cmp(&-Float::MAX_SUBNORMAL, &-Float::MAX_SUBNORMAL), Ordering::Equal));
assert!(matches!(Float::total_cmp(&-Float::TINY, &-Float::TINY), Ordering::Equal));
assert!(matches!(Float::total_cmp(&-0.0, &-0.0), Ordering::Equal));
assert!(matches!(Float::total_cmp(&0.0, &0.0), Ordering::Equal));
assert!(matches!(Float::total_cmp(&Float::TINY, &Float::TINY), Ordering::Equal));
assert!(matches!(Float::total_cmp(&Float::MAX_SUBNORMAL, &Float::MAX_SUBNORMAL), Ordering::Equal));
assert!(matches!(Float::total_cmp(&Float::MIN_POSITIVE, &Float::MIN_POSITIVE), Ordering::Equal));
assert!(matches!(Float::total_cmp(&0.5, &0.5), Ordering::Equal));
assert!(matches!(Float::total_cmp(&1.0, &1.0), Ordering::Equal));
assert!(matches!(Float::total_cmp(&1.5, &1.5), Ordering::Equal));
assert!(matches!(Float::total_cmp(&2.5, &2.5), Ordering::Equal));
assert!(matches!(Float::total_cmp(&Float::MAX, &Float::MAX), Ordering::Equal));
assert!(matches!(Float::total_cmp(&Float::INFINITY, &Float::INFINITY), Ordering::Equal));
assert!(matches!(Float::total_cmp(&q_nan(), &q_nan()), Ordering::Equal));

assert!(matches!(Float::total_cmp(&-Float::INFINITY, &-Float::MAX), Ordering::Less));
assert!(matches!(Float::total_cmp(&-Float::MAX, &-2.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&-2.5, &-1.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&-1.5, &-1.0), Ordering::Less));
assert!(matches!(Float::total_cmp(&-1.0, &-0.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&-0.5, &-Float::MIN_POSITIVE), Ordering::Less));
assert!(matches!(Float::total_cmp(&-Float::MIN_POSITIVE, &-Float::MAX_SUBNORMAL), Ordering::Less));
assert!(matches!(Float::total_cmp(&-Float::MAX_SUBNORMAL, &-Float::TINY), Ordering::Less));
assert!(matches!(Float::total_cmp(&-Float::TINY, &-0.0), Ordering::Less));
assert!(matches!(Float::total_cmp(&-0.0, &0.0), Ordering::Less));
assert!(matches!(Float::total_cmp(&0.0, &Float::TINY), Ordering::Less));
assert!(matches!(Float::total_cmp(&Float::TINY, &Float::MAX_SUBNORMAL), Ordering::Less));
assert!(matches!(Float::total_cmp(&Float::MAX_SUBNORMAL, &Float::MIN_POSITIVE), Ordering::Less));
assert!(matches!(Float::total_cmp(&Float::MIN_POSITIVE, &0.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&0.5, &1.0), Ordering::Less));
assert!(matches!(Float::total_cmp(&1.0, &1.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&1.5, &2.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&2.5, &Float::MAX), Ordering::Less));
assert!(matches!(Float::total_cmp(&Float::MAX, &Float::INFINITY), Ordering::Less));

assert!(matches!(Float::total_cmp(&-Float::MAX, &-Float::INFINITY), Ordering::Greater));
assert!(matches!(Float::total_cmp(&-2.5, &-Float::MAX), Ordering::Greater));
assert!(matches!(Float::total_cmp(&-1.5, &-2.5), Ordering::Greater));
assert!(matches!(Float::total_cmp(&-1.0, &-1.5), Ordering::Greater));
assert!(matches!(Float::total_cmp(&-0.5, &-1.0), Ordering::Greater));
assert!(matches!(Float::total_cmp(&-Float::MIN_POSITIVE, &-0.5), Ordering::Greater));
assert!(matches!(Float::total_cmp(&-Float::MAX_SUBNORMAL, &-Float::MIN_POSITIVE), Ordering::Greater));
assert!(matches!(Float::total_cmp(&-Float::TINY, &-Float::MAX_SUBNORMAL), Ordering::Greater));
assert!(matches!(Float::total_cmp(&-0.0, &-Float::TINY), Ordering::Greater));
assert!(matches!(Float::total_cmp(&0.0, &-0.0), Ordering::Greater));
assert!(matches!(Float::total_cmp(&Float::TINY, &0.0), Ordering::Greater));
assert!(matches!(Float::total_cmp(&Float::MAX_SUBNORMAL, &Float::TINY), Ordering::Greater));
assert!(matches!(Float::total_cmp(&Float::MIN_POSITIVE, &Float::MAX_SUBNORMAL), Ordering::Greater));
assert!(matches!(Float::total_cmp(&0.5, &Float::MIN_POSITIVE), Ordering::Greater));
assert!(matches!(Float::total_cmp(&1.0, &0.5), Ordering::Greater));
assert!(matches!(Float::total_cmp(&1.5, &1.0), Ordering::Greater));
assert!(matches!(Float::total_cmp(&2.5, &1.5), Ordering::Greater));
assert!(matches!(Float::total_cmp(&Float::MAX, &2.5), Ordering::Greater));
assert!(matches!(Float::total_cmp(&Float::INFINITY, &Float::MAX), Ordering::Greater));

assert!(matches!(Float::total_cmp(&-q_nan(), &-Float::INFINITY), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &-Float::MAX), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &-2.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &-1.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &-1.0), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &-0.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &-Float::MIN_POSITIVE), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &-Float::MAX_SUBNORMAL), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &-Float::TINY), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &-0.0), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &0.0), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &Float::TINY), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &Float::MAX_SUBNORMAL), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &Float::MIN_POSITIVE), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &0.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &1.0), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &1.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &2.5), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &Float::MAX), Ordering::Less));
assert!(matches!(Float::total_cmp(&-q_nan(), &Float::INFINITY), Ordering::Less));

}
}
Expand Down
2 changes: 1 addition & 1 deletion library/std/src/sync/nonpoison/mutex.rs
Original file line number Diff line number Diff line change
Expand Up @@ -373,7 +373,7 @@ impl<T: ?Sized> Mutex<T> {
/// or written through after the mutex is dropped.
#[unstable(feature = "mutex_data_ptr", issue = "140368")]
// #[unstable(feature = "nonpoison_mutex", issue = "134645")]
pub fn data_ptr(&self) -> *mut T {
pub const fn data_ptr(&self) -> *mut T {
self.data.get()
}
}
Expand Down
2 changes: 1 addition & 1 deletion library/std/src/sync/nonpoison/rwlock.rs
Original file line number Diff line number Diff line change
Expand Up @@ -495,7 +495,7 @@ impl<T: ?Sized> RwLock<T> {
/// or written through after the lock is dropped.
#[unstable(feature = "rwlock_data_ptr", issue = "140368")]
// #[unstable(feature = "nonpoison_rwlock", issue = "134645")]
pub fn data_ptr(&self) -> *mut T {
pub const fn data_ptr(&self) -> *mut T {
self.data.get()
}
}
Expand Down
2 changes: 1 addition & 1 deletion library/std/src/sync/poison/mutex.rs
Original file line number Diff line number Diff line change
Expand Up @@ -668,7 +668,7 @@ impl<T: ?Sized> Mutex<T> {
/// are properly synchronized to avoid data races, and that it is not read
/// or written through after the mutex is dropped.
#[unstable(feature = "mutex_data_ptr", issue = "140368")]
pub fn data_ptr(&self) -> *mut T {
pub const fn data_ptr(&self) -> *mut T {
self.data.get()
}
}
Expand Down
2 changes: 1 addition & 1 deletion library/std/src/sync/poison/rwlock.rs
Original file line number Diff line number Diff line change
Expand Up @@ -667,7 +667,7 @@ impl<T: ?Sized> RwLock<T> {
/// are properly synchronized to avoid data races, and that it is not read
/// or written through after the lock is dropped.
#[unstable(feature = "rwlock_data_ptr", issue = "140368")]
pub fn data_ptr(&self) -> *mut T {
pub const fn data_ptr(&self) -> *mut T {
self.data.get()
}
}
Expand Down
2 changes: 1 addition & 1 deletion library/std/src/sync/reentrant_lock.rs
Original file line number Diff line number Diff line change
Expand Up @@ -355,7 +355,7 @@ impl<T: ?Sized> ReentrantLock<T> {
/// properly synchronized to avoid data races, and that it is not read
/// through after the lock is dropped.
#[unstable(feature = "reentrant_lock_data_ptr", issue = "140368")]
pub fn data_ptr(&self) -> *const T {
pub const fn data_ptr(&self) -> *const T {
&raw const self.data
}

Expand Down
2 changes: 1 addition & 1 deletion src/doc/book
2 changes: 1 addition & 1 deletion src/doc/rust-by-example
2 changes: 1 addition & 1 deletion src/doc/rustc-dev-guide/rust-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2f3f27bf79ec147fec9d2e7980605307a74067f4
9f32ccf35fb877270bc44a86a126440f04d676d0
1 change: 1 addition & 0 deletions src/doc/rustc-dev-guide/src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@
- [Installation](./autodiff/installation.md)
- [How to debug](./autodiff/debugging.md)
- [Autodiff flags](./autodiff/flags.md)
- [Type Trees](./autodiff/type-trees.md)

# Source Code Representation

Expand Down
Loading
Loading