1 // run-pass 2 #![allow(unused_imports)] 3 // ignore-emscripten no processes 4 // ignore-sgx no processes 5 6 use std::env; 7 use std::process::{self, Command, Stdio}; 8 main()9fn main() { 10 let args: Vec<String> = env::args().collect(); 11 if args.len() > 1 && args[1] == "child" { 12 child(); 13 } else { 14 parent(); 15 } 16 } 17 parent()18fn parent() { 19 let args: Vec<String> = env::args().collect(); 20 let status = Command::new(&args[0]).arg("child").status().unwrap(); 21 assert_eq!(status.code(), Some(2)); 22 } 23 child() -> i3224fn child() -> i32 { 25 process::exit(2); 26 } 27