Skip to content

Commit 8300869

Browse files
committed
add tracking issue and unit testt
1 parent 8f3ff87 commit 8300869

File tree

4 files changed

+9
-3
lines changed

4 files changed

+9
-3
lines changed

library/core/src/array/mod.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ pub use iter::IntoIter;
5656
/// ```
5757
#[inline]
5858
#[stable(feature = "array_from_fn", since = "1.63.0")]
59-
#[rustc_const_unstable(feature = "const_array_from_fn", issue = "none")]
59+
#[rustc_const_unstable(feature = "const_array_from_fn", issue = "109341")]
6060
pub const fn from_fn<T, const N: usize, F>(cb: F) -> [T; N]
6161
where
6262
F: ~const FnMut(usize) -> T + ~const Destruct,
@@ -839,7 +839,7 @@ where
839839
/// not optimizing away. So if you give it a shot, make sure to watch what
840840
/// happens in the codegen tests.
841841
#[inline]
842-
#[rustc_const_unstable(feature = "const_array_from_fn", issue = "none")]
842+
#[rustc_const_unstable(feature = "const_array_from_fn", issue = "109341")]
843843
const fn try_from_fn_erased<T, R>(
844844
buffer: &mut [MaybeUninit<T>],
845845
mut generator: impl ~const FnMut(usize) -> R + ~const Destruct,

library/core/src/ptr/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -486,7 +486,7 @@ mod mut_ptr;
486486
/// assert!(weak.upgrade().is_none());
487487
/// ```
488488
#[stable(feature = "drop_in_place", since = "1.8.0")]
489-
#[rustc_const_unstable(feature = "const_drop_in_place", issue = "none")]
489+
#[rustc_const_unstable(feature = "const_drop_in_place", issue = "109342")]
490490
#[lang = "drop_in_place"]
491491
#[allow(unconditional_recursion)]
492492
pub const unsafe fn drop_in_place<T: ?Sized + ~const Destruct>(to_drop: *mut T) {

library/core/tests/array.rs

+3
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,9 @@ fn cell_allows_array_cycle() {
376376
fn array_from_fn() {
377377
let array = core::array::from_fn(|idx| idx);
378378
assert_eq!(array, [0, 1, 2, 3, 4]);
379+
380+
const ARR: [usize; 5] = core::array::from_fn(const |idx| idx);
381+
assert_eq!(ARR, [0, 1, 2, 3, 4]);
379382
}
380383

381384
#[test]

library/core/tests/lib.rs

+3
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,14 @@
55
#![feature(bigint_helper_methods)]
66
#![feature(cell_update)]
77
#![feature(const_align_offset)]
8+
#![feature(const_array_from_fn)]
89
#![feature(const_assume)]
910
#![feature(const_align_of_val_raw)]
1011
#![feature(const_black_box)]
1112
#![feature(const_bool_to_option)]
1213
#![feature(const_caller_location)]
1314
#![feature(const_cell_into_inner)]
15+
#![feature(const_closures)]
1416
#![feature(const_convert)]
1517
#![feature(const_for)]
1618
#![feature(const_hash)]
@@ -116,6 +118,7 @@
116118
#![feature(utf8_chunks)]
117119
#![feature(is_ascii_octdigit)]
118120
#![feature(get_many_mut)]
121+
#![allow(incomplete_features)]
119122
#![deny(unsafe_op_in_unsafe_fn)]
120123
#![deny(fuzzy_provenance_casts)]
121124

0 commit comments

Comments
 (0)