fn main() {
let _guard = zccache::core::crash::install("zccache-daemon");
let mode = std::env::args().nth(1).unwrap_or_default();
match mode.as_str() {
"panic" => panic!("intentional test panic from crash-trigger"),
"sigsegv" => unsafe { sadness_generator::raise_segfault() },
"sigabrt" => unsafe { sadness_generator::raise_abort() },
"stack-overflow" => unsafe { sadness_generator::raise_stack_overflow() },
"illegal-instruction" => unsafe { sadness_generator::raise_illegal_instruction() },
other => {
eprintln!(
"crash-trigger: unknown mode '{other}' (expected panic|sigsegv|sigabrt|stack-overflow|illegal-instruction)"
);
std::process::exit(2);
}
}
}