@@ -48,17 +48,17 @@ const MIR_OPT_BLESS_TARGET_MAPPING: &[(&str, &str)] = &[
48
48
// build for, so there is no entry for "aarch64-apple-darwin" here.
49
49
] ;
50
50
51
- fn try_run ( builder : & Builder < ' _ > , cmd : & mut Command ) -> bool {
51
+ fn try_run ( builder : & Builder < ' _ > , cmd : & mut Command ) -> Result < ( ) , ( ) > {
52
52
if !builder. fail_fast {
53
- if ! builder. try_run ( cmd) {
53
+ if let Err ( e ) = builder. try_run ( cmd) {
54
54
let mut failures = builder. delayed_failures . borrow_mut ( ) ;
55
55
failures. push ( format ! ( "{:?}" , cmd) ) ;
56
- return false ;
56
+ return Err ( e ) ;
57
57
}
58
58
} else {
59
59
builder. run ( cmd) ;
60
60
}
61
- true
61
+ Ok ( ( ) )
62
62
}
63
63
64
64
fn try_run_quiet ( builder : & Builder < ' _ > , cmd : & mut Command ) -> bool {
@@ -187,7 +187,8 @@ You can skip linkcheck with --exclude src/tools/linkchecker"
187
187
try_run (
188
188
builder,
189
189
builder. tool_cmd ( Tool :: Linkchecker ) . arg ( builder. out . join ( host. triple ) . join ( "doc" ) ) ,
190
- ) ;
190
+ )
191
+ . unwrap ( ) ;
191
192
}
192
193
193
194
fn should_run ( run : ShouldRun < ' _ > ) -> ShouldRun < ' _ > {
@@ -240,7 +241,8 @@ impl Step for HtmlCheck {
240
241
builder. default_doc ( & [ ] ) ;
241
242
builder. ensure ( crate :: doc:: Rustc :: new ( builder. top_stage , self . target , builder) ) ;
242
243
243
- try_run ( builder, builder. tool_cmd ( Tool :: HtmlChecker ) . arg ( builder. doc_out ( self . target ) ) ) ;
244
+ try_run ( builder, builder. tool_cmd ( Tool :: HtmlChecker ) . arg ( builder. doc_out ( self . target ) ) )
245
+ . unwrap ( ) ;
244
246
}
245
247
}
246
248
@@ -286,7 +288,8 @@ impl Step for Cargotest {
286
288
. args ( builder. config . test_args ( ) )
287
289
. env ( "RUSTC" , builder. rustc ( compiler) )
288
290
. env ( "RUSTDOC" , builder. rustdoc ( compiler) ) ,
289
- ) ;
291
+ )
292
+ . unwrap ( ) ;
290
293
}
291
294
}
292
295
@@ -785,7 +788,7 @@ impl Step for Clippy {
785
788
cargo. add_rustc_lib_path ( builder, compiler) ;
786
789
let mut cargo = prepare_cargo_test ( cargo, & [ ] , & [ ] , "clippy" , compiler, host, builder) ;
787
790
788
- if builder. try_run ( & mut cargo) {
791
+ if builder. try_run ( & mut cargo) . is_ok ( ) {
789
792
// The tests succeeded; nothing to do.
790
793
return ;
791
794
}
@@ -858,7 +861,7 @@ impl Step for RustdocTheme {
858
861
util:: lld_flag_no_threads ( self . compiler . host . contains ( "windows" ) ) ,
859
862
) ;
860
863
}
861
- try_run ( builder, & mut cmd) ;
864
+ try_run ( builder, & mut cmd) . unwrap ( ) ;
862
865
}
863
866
}
864
867
@@ -1109,7 +1112,7 @@ help: to skip test's attempt to check tidiness, pass `--exclude src/tools/tidy`
1109
1112
}
1110
1113
1111
1114
builder. info ( "tidy check" ) ;
1112
- try_run ( builder, & mut cmd) ;
1115
+ try_run ( builder, & mut cmd) . unwrap ( ) ;
1113
1116
1114
1117
builder. ensure ( ExpandYamlAnchors ) ;
1115
1118
@@ -1157,7 +1160,8 @@ impl Step for ExpandYamlAnchors {
1157
1160
try_run (
1158
1161
builder,
1159
1162
& mut builder. tool_cmd ( Tool :: ExpandYamlAnchors ) . arg ( "check" ) . arg ( & builder. src ) ,
1160
- ) ;
1163
+ )
1164
+ . unwrap ( ) ;
1161
1165
}
1162
1166
1163
1167
fn should_run ( run : ShouldRun < ' _ > ) -> ShouldRun < ' _ > {
@@ -1936,7 +1940,7 @@ impl BookTest {
1936
1940
compiler. host ,
1937
1941
) ;
1938
1942
let _time = util:: timeit ( & builder) ;
1939
- let toolstate = if try_run ( builder, & mut rustbook_cmd) {
1943
+ let toolstate = if try_run ( builder, & mut rustbook_cmd) . is_ok ( ) {
1940
1944
ToolState :: TestPass
1941
1945
} else {
1942
1946
ToolState :: TestFail
@@ -2094,7 +2098,7 @@ fn markdown_test(builder: &Builder<'_>, compiler: Compiler, markdown: &Path) ->
2094
2098
cmd. arg ( "--test-args" ) . arg ( test_args) ;
2095
2099
2096
2100
if builder. config . verbose_tests {
2097
- try_run ( builder, & mut cmd)
2101
+ try_run ( builder, & mut cmd) . is_ok ( )
2098
2102
} else {
2099
2103
try_run_quiet ( builder, & mut cmd)
2100
2104
}
@@ -2122,7 +2126,7 @@ impl Step for RustcGuide {
2122
2126
2123
2127
let src = builder. src . join ( relative_path) ;
2124
2128
let mut rustbook_cmd = builder. tool_cmd ( Tool :: Rustbook ) ;
2125
- let toolstate = if try_run ( builder, rustbook_cmd. arg ( "linkcheck" ) . arg ( & src) ) {
2129
+ let toolstate = if try_run ( builder, rustbook_cmd. arg ( "linkcheck" ) . arg ( & src) ) . is_ok ( ) {
2126
2130
ToolState :: TestPass
2127
2131
} else {
2128
2132
ToolState :: TestFail
@@ -2661,7 +2665,7 @@ impl Step for Bootstrap {
2661
2665
fn run ( self , builder : & Builder < ' _ > ) {
2662
2666
let mut check_bootstrap = Command :: new ( & builder. python ( ) ) ;
2663
2667
check_bootstrap. arg ( "bootstrap_test.py" ) . current_dir ( builder. src . join ( "src/bootstrap/" ) ) ;
2664
- try_run ( builder, & mut check_bootstrap) ;
2668
+ try_run ( builder, & mut check_bootstrap) . unwrap ( ) ;
2665
2669
2666
2670
let host = builder. config . build ;
2667
2671
let compiler = builder. compiler ( 0 , host) ;
@@ -2733,7 +2737,7 @@ impl Step for TierCheck {
2733
2737
}
2734
2738
2735
2739
builder. info ( "platform support check" ) ;
2736
- try_run ( builder, & mut cargo. into ( ) ) ;
2740
+ try_run ( builder, & mut cargo. into ( ) ) . unwrap ( ) ;
2737
2741
}
2738
2742
}
2739
2743
@@ -2813,7 +2817,7 @@ impl Step for RustInstaller {
2813
2817
cmd. env ( "CARGO" , & builder. initial_cargo ) ;
2814
2818
cmd. env ( "RUSTC" , & builder. initial_rustc ) ;
2815
2819
cmd. env ( "TMP_DIR" , & tmpdir) ;
2816
- try_run ( builder, & mut cmd) ;
2820
+ try_run ( builder, & mut cmd) . unwrap ( ) ;
2817
2821
}
2818
2822
2819
2823
fn should_run ( run : ShouldRun < ' _ > ) -> ShouldRun < ' _ > {
0 commit comments