rust/tests/ui/consts/const-blocks/fn-call-in-const.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

24 lines
443 B
Rust
Raw Normal View History

// run-pass
2021-01-26 22:49:30 +00:00
#![feature(inline_const)]
#![allow(unused)]
// Some type that is not copyable.
struct Bar;
const fn type_no_copy() -> Option<Bar> {
None
}
const fn type_copy() -> u32 {
3
}
const _: [u32; 2] = [type_copy(); 2];
// This is allowed because all promotion contexts use the explicit rules for promotability when
// inside an explicit const context.
2021-01-26 22:49:30 +00:00
const _: [Option<Bar>; 2] = [const { type_no_copy() }; 2];
fn main() {}