In a no_std crate, when using core::panic it will only accept &str. The documentation claims you can do panic!(4) but this gives an error. Is the documentation wrong or am I doing something wrong?
See Playground
In a no_std crate, when using core::panic it will only accept &str. The documentation claims you can do panic!(4) but this gives an error. Is the documentation wrong or am I doing something wrong?
See Playground
It looks like calling panic! with a non-&str first argument involves creating a Box<dyn Any>, which requires dynamic memory allocation. With #![no_std] + extern crate alloc; you get a different set of errors: playground.
I think the documentation is not very clear on this point, and anyway it uses the deprecated dyn-less syntax for trait objects, so maybe a PR is in order.
Ah so it's a documentation issue. I guess it just copied the std docs.
It is a shame it's impossible to pass anything other than a &str unless I use std but I understand why.
Ah it seems plans are underway to merge the two panics: https://github.com/rust-lang/rust/issues/80162