]> git.proxmox.com Git - rustc.git/blame - src/test/ui/consts/const-fn-not-safe-for-const.rs
New upstream version 1.56.0~beta.4+dfsg1
[rustc.git] / src / test / ui / consts / const-fn-not-safe-for-const.rs
CommitLineData
62682a34
SL
1// Test that we can't call random fns in a const fn or do other bad things.
2
62682a34
SL
3use std::mem::transmute;
4
94222f64
XL
5fn random() -> u32 {
6 0
7}
62682a34
SL
8
9const fn sub(x: &u32) -> usize {
b7449926 10 unsafe { transmute(x) }
62682a34
SL
11}
12
13const fn sub1() -> u32 {
14 random() //~ ERROR E0015
15}
16
17static Y: u32 = 0;
18
19const fn get_Y() -> u32 {
20 Y
94222f64 21 //~^ ERROR E0013
62682a34
SL
22}
23
24const fn get_Y_addr() -> &'static u32 {
25 &Y
94222f64 26 //~^ ERROR E0013
62682a34
SL
27}
28
a7813a04 29const fn get() -> u32 {
94b46f34 30 let x = 22;
94b46f34 31 let y = 44;
a7813a04
XL
32 x + y
33}
34
8faf50e0 35fn main() {}