Skip to content

Commit 03b6241

Browse files
authored
Unrolled build for rust-lang#122291
Rollup merge of rust-lang#122291 - lilasta:stabilize_const_location_fields, r=dtolnay Stabilize `const_caller_location` and `const_location_fields` Closes rust-lang#102911. Closes rust-lang#76156. tests: [library/core/tests/panic/location.rs](https://github.com/rust-lang/rust/blob/3521a2f2f317cb978063842485c7d1bc86ec82b6/library/core/tests/panic/location.rs) API: ```rust // core::panic::location impl Location { pub const fn caller() -> &'static Location<'static>; pub const fn file(&self) -> &str; pub const fn line(&self) -> u32; pub const fn column(&self) -> u32; } ```
2 parents 01f7f3a + d324d6d commit 03b6241

File tree

6 files changed

+11
-16
lines changed

6 files changed

+11
-16
lines changed

library/core/src/intrinsics.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1128,7 +1128,7 @@ extern "rust-intrinsic" {
11281128
/// any safety invariants.
11291129
///
11301130
/// Consider using [`core::panic::Location::caller`] instead.
1131-
#[rustc_const_unstable(feature = "const_caller_location", issue = "76156")]
1131+
#[rustc_const_stable(feature = "const_caller_location", since = "CURRENT_RUSTC_VERSION")]
11321132
#[rustc_safe_intrinsic]
11331133
#[rustc_nounwind]
11341134
pub fn caller_location() -> &'static crate::panic::Location<'static>;

library/core/src/lib.rs

-1
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,6 @@
125125
#![feature(const_array_into_iter_constructors)]
126126
#![feature(const_bigint_helper_methods)]
127127
#![feature(const_black_box)]
128-
#![feature(const_caller_location)]
129128
#![feature(const_cell_into_inner)]
130129
#![feature(const_char_from_u32_unchecked)]
131130
#![feature(const_eval_select)]

library/core/src/panic/location.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ impl<'a> Location<'a> {
8181
/// ```
8282
#[must_use]
8383
#[stable(feature = "track_caller", since = "1.46.0")]
84-
#[rustc_const_unstable(feature = "const_caller_location", issue = "76156")]
84+
#[rustc_const_stable(feature = "const_caller_location", since = "CURRENT_RUSTC_VERSION")]
8585
#[track_caller]
8686
#[inline]
8787
pub const fn caller() -> &'static Location<'static> {
@@ -123,7 +123,7 @@ impl<'a> Location<'a> {
123123
/// ```
124124
#[must_use]
125125
#[stable(feature = "panic_hooks", since = "1.10.0")]
126-
#[rustc_const_unstable(feature = "const_location_fields", issue = "102911")]
126+
#[rustc_const_stable(feature = "const_location_fields", since = "CURRENT_RUSTC_VERSION")]
127127
#[inline]
128128
pub const fn file(&self) -> &str {
129129
self.file
@@ -148,7 +148,7 @@ impl<'a> Location<'a> {
148148
/// ```
149149
#[must_use]
150150
#[stable(feature = "panic_hooks", since = "1.10.0")]
151-
#[rustc_const_unstable(feature = "const_location_fields", issue = "102911")]
151+
#[rustc_const_stable(feature = "const_location_fields", since = "CURRENT_RUSTC_VERSION")]
152152
#[inline]
153153
pub const fn line(&self) -> u32 {
154154
self.line
@@ -173,7 +173,7 @@ impl<'a> Location<'a> {
173173
/// ```
174174
#[must_use]
175175
#[stable(feature = "panic_col", since = "1.25.0")]
176-
#[rustc_const_unstable(feature = "const_location_fields", issue = "102911")]
176+
#[rustc_const_stable(feature = "const_location_fields", since = "CURRENT_RUSTC_VERSION")]
177177
#[inline]
178178
pub const fn column(&self) -> u32 {
179179
self.col

library/core/tests/lib.rs

-2
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
#![feature(const_align_offset)]
1212
#![feature(const_align_of_val_raw)]
1313
#![feature(const_black_box)]
14-
#![feature(const_caller_location)]
1514
#![feature(const_cell_into_inner)]
1615
#![feature(const_hash)]
1716
#![feature(const_heap)]
@@ -25,7 +24,6 @@
2524
#![cfg_attr(not(bootstrap), feature(const_three_way_compare))]
2625
#![feature(const_trait_impl)]
2726
#![feature(const_likely)]
28-
#![feature(const_location_fields)]
2927
#![feature(core_intrinsics)]
3028
#![feature(core_io_borrowed_buf)]
3129
#![feature(core_private_bignum)]

tests/ui/rfcs/rfc-2091-track-caller/caller-location-fnptr-rt-ctfe-equiv.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
//@ run-pass
77
//@ compile-flags: -Z unleash-the-miri-inside-of-you
88

9-
#![feature(core_intrinsics, const_caller_location)]
9+
#![feature(core_intrinsics)]
1010

1111
type L = &'static std::panic::Location<'static>;
1212

tests/ui/rfcs/rfc-2091-track-caller/const-caller-location.rs

+5-7
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,13 @@
22
//@ revisions: default mir-opt
33
//@[mir-opt] compile-flags: -Zmir-opt-level=4
44

5-
#![feature(const_caller_location)]
6-
75
use std::panic::Location;
86

97
const LOCATION: &Location = Location::caller();
108

119
const TRACKED: &Location = tracked();
1210
#[track_caller]
13-
const fn tracked() -> &'static Location <'static> {
11+
const fn tracked() -> &'static Location<'static> {
1412
Location::caller()
1513
}
1614

@@ -26,18 +24,18 @@ const fn contained() -> &'static Location<'static> {
2624

2725
fn main() {
2826
assert_eq!(LOCATION.file(), file!());
29-
assert_eq!(LOCATION.line(), 9);
27+
assert_eq!(LOCATION.line(), 7);
3028
assert_eq!(LOCATION.column(), 29);
3129

3230
assert_eq!(TRACKED.file(), file!());
33-
assert_eq!(TRACKED.line(), 11);
31+
assert_eq!(TRACKED.line(), 9);
3432
assert_eq!(TRACKED.column(), 28);
3533

3634
assert_eq!(NESTED.file(), file!());
37-
assert_eq!(NESTED.line(), 19);
35+
assert_eq!(NESTED.line(), 17);
3836
assert_eq!(NESTED.column(), 5);
3937

4038
assert_eq!(CONTAINED.file(), file!());
41-
assert_eq!(CONTAINED.line(), 24);
39+
assert_eq!(CONTAINED.line(), 22);
4240
assert_eq!(CONTAINED.column(), 5);
4341
}

0 commit comments

Comments
 (0)