1#[macro_export]
11macro_rules! bug {
12 ($msg:expr)=> {
13 $crate::bug!($msg,)
14 };
15
16 ($msg:expr, $($arg:tt)*) => {{
17 let formatted_msg = format!($msg, $($arg)*);
18 let full_message = format!(
19 r#"
20This should never happen, sorry!
21
22However, it did happen, so it must be a bug. Please report it to us!
23
24Conjure Oxide is actively developed and maintained. We will get back to you as soon as possible.
25
26You can help us by providing a minimal failing example.
27
28Issue tracker: http://github.com/conjure-cp/conjure-oxide/issues
29
30version: {}
31location: {}:{}:{}
32
33{}
34"#, git_version::git_version!(),file!(),module_path!(),line!(), &formatted_msg);
35
36 panic!("{}", full_message);
37 }};
38}