@@ -6,7 +6,7 @@ use crate::utils::{
66 split_args, walk_dir,
77} ;
88
9- use std:: collections:: { BTreeSet , HashMap } ;
9+ use std:: collections:: HashMap ;
1010use std:: ffi:: OsStr ;
1111use std:: fs:: { remove_dir_all, File } ;
1212use std:: io:: { BufRead , BufReader } ;
@@ -82,7 +82,7 @@ fn show_usage() {
8282struct TestArg {
8383 build_only : bool ,
8484 use_system_gcc : bool ,
85- runners : BTreeSet < String > ,
85+ runners : Vec < String > ,
8686 flags : Vec < String > ,
8787 nb_parts : Option < usize > ,
8888 current_part : Option < usize > ,
@@ -127,8 +127,8 @@ impl TestArg {
127127 show_usage ( ) ;
128128 return Ok ( None ) ;
129129 }
130- x if runners. contains_key ( x) => {
131- test_arg. runners . insert ( x. into ( ) ) ;
130+ x if runners. contains_key ( x) && !test_arg . runners . iter ( ) . any ( |runner| runner == x ) => {
131+ test_arg. runners . push ( x. into ( ) ) ;
132132 }
133133 arg => {
134134 if !test_arg. config_info . parse_argument ( arg, & mut args) ? {
@@ -535,7 +535,7 @@ fn asm_tests(env: &Env, args: &TestArg) -> Result<(), String> {
535535 let rustc_args = & format ! (
536536 r#"-Zpanic-abort-tests \
537537 -Zcodegen-backend="{pwd}/target/{channel}/librustc_codegen_gcc.{dylib_ext}" \
538- --sysroot "{pwd}/{ sysroot_dir}" -Cpanic=abort{extra}"# ,
538+ --sysroot "{sysroot_dir}" -Cpanic=abort{extra}"# ,
539539 pwd = std:: env:: current_dir( )
540540 . map_err( |error| format!( "`current_dir` failed: {:?}" , error) ) ?
541541 . display( ) ,
@@ -974,11 +974,11 @@ where
974974 if args. is_using_gcc_master_branch ( ) { "" } else { " -Csymbol-mangling-version=v0" } ;
975975
976976 let rustc_args = format ! (
977- "{} -Zcodegen-backend={} --sysroot {}{ }" ,
978- env. get( "TEST_FLAGS" ) . unwrap_or( & String :: new( ) ) ,
979- args. config_info. cg_backend_path,
980- args. config_info. sysroot_path,
981- extra,
977+ "{test_flags } -Zcodegen-backend={backend } --sysroot {sysroot}{extra }" ,
978+ test_flags = env. get( "TEST_FLAGS" ) . unwrap_or( & String :: new( ) ) ,
979+ backend = args. config_info. cg_backend_path,
980+ sysroot = args. config_info. sysroot_path,
981+ extra = extra ,
982982 ) ;
983983
984984 env. get_mut ( "RUSTFLAGS" ) . unwrap ( ) . clear ( ) ;
0 commit comments