blob: da3b4ca85c2a3076c8d16b54376ca58380b63608 [file] [log] [blame]
Felix S. Klock II0909e0b2018-08-30 12:18:551// run-pass
Felix S. Klock IIc9d9cc62018-09-25 21:51:352#![allow(unused_imports)]
Ed Schouten3f880912018-01-02 13:11:413// ignore-cloudabi no processes
Alex Crichtond9ecdfe2017-10-18 01:45:424// ignore-emscripten no processes
Dario Gonzalezf2466cd2019-04-24 16:26:335// ignore-sgx no processes
Jan-Erik Redigerad918732016-08-08 23:39:376
Alex Crichton71982aa2015-03-31 21:41:597use std::env;
8use std::process::{self, Command, Stdio};
9
10fn main() {
11 let args: Vec<String> = env::args().collect();
12 if args.len() > 1 && args[1] == "child" {
13 child();
14 } else {
15 parent();
16 }
17}
18
19fn parent() {
20 let args: Vec<String> = env::args().collect();
21 let status = Command::new(&args[0]).arg("child").status().unwrap();
22 assert_eq!(status.code(), Some(2));
23}
24
25fn child() -> i32 {
26 process::exit(2);
27}