fn main() {
const X: u32 = 1;
const Y: uint = &X as *const u32 as uint;
println!("{}", Y);
}
Fixing this requires backwards incompatible changes to constant expressions. At a minimum, casts from pointers to integers need to be forbidden. It's possible that there are other issues.