error[E0658]: `match` is not allowed in a `const` --> $DIR/match-test-ptr-null.rs:6:9 | LL | / match &1 as *const i32 as usize { LL | | LL | | LL | | LL | | 0 => 42, LL | | n => n, LL | | } | |_________^ | = note: see issue #49146 for more information = help: add `#![feature(const_if_match)]` to the crate attributes to enable error[E0658]: casting pointers to integers in constants is unstable --> $DIR/match-test-ptr-null.rs:6:15 | LL | match &1 as *const i32 as usize { | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #51910 for more information = help: add `#![feature(const_raw_ptr_to_usize_cast)]` to the crate attributes to enable error[E0080]: evaluation of constant value failed --> $DIR/match-test-ptr-null.rs:6:15 | LL | match &1 as *const i32 as usize { | ^^^^^^^^^^^^^^^^^^^^^^^^^ "pointer-to-integer cast" needs an rfc before being allowed inside constants error[E0308]: mismatched types --> $DIR/match-test-ptr-null.rs:5:22 | LL | let _: [u8; 0] = [4; { | ____________-------___^ | | | | | expected due to this LL | | match &1 as *const i32 as usize { LL | | LL | | ... | LL | | } LL | | }]; | |______^ expected `0usize`, found `{ match &1 as *const i32 as usize { 0 => 42, n => n, } }` | = note: expected array `[u8; 0]` found array `[u8; _]` error: aborting due to 4 previous errors Some errors have detailed explanations: E0080, E0308, E0658. For more information about an error, try `rustc --explain E0080`.