1
1
#![ allow( dead_code) ]
2
2
3
3
use std:: env;
4
- use std:: ffi:: OsStr ;
4
+ use std:: ffi:: { OsStr , OsString } ;
5
5
use std:: fs:: { self , File } ;
6
6
use std:: io:: prelude:: * ;
7
7
use std:: path:: PathBuf ;
@@ -57,8 +57,6 @@ impl Test {
57
57
58
58
pub fn gcc ( & self ) -> cc:: Build {
59
59
let mut cfg = cc:: Build :: new ( ) ;
60
- let mut path = env:: split_paths ( & env:: var_os ( "PATH" ) . unwrap ( ) ) . collect :: < Vec < _ > > ( ) ;
61
- path. insert ( 0 , self . td . path ( ) . to_owned ( ) ) ;
62
60
let target = if self . msvc {
63
61
"x86_64-pc-windows-msvc"
64
62
} else {
@@ -70,7 +68,7 @@ impl Test {
70
68
. opt_level ( 2 )
71
69
. debug ( false )
72
70
. out_dir ( self . td . path ( ) )
73
- . __set_env ( "PATH" , env :: join_paths ( path ) . unwrap ( ) )
71
+ . __set_env ( "PATH" , self . path ( ) )
74
72
. __set_env ( "GCCTEST_OUT_DIR" , self . td . path ( ) ) ;
75
73
if self . msvc {
76
74
cfg. compiler ( self . td . path ( ) . join ( "cl" ) ) ;
@@ -79,6 +77,12 @@ impl Test {
79
77
cfg
80
78
}
81
79
80
+ fn path ( & self ) -> OsString {
81
+ let mut path = env:: split_paths ( & env:: var_os ( "PATH" ) . unwrap ( ) ) . collect :: < Vec < _ > > ( ) ;
82
+ path. insert ( 0 , self . td . path ( ) . to_owned ( ) ) ;
83
+ env:: join_paths ( path) . unwrap ( )
84
+ }
85
+
82
86
pub fn cmd ( & self , i : u32 ) -> Execution {
83
87
let mut s = String :: new ( ) ;
84
88
File :: open ( self . td . path ( ) . join ( format ! ( "out{}" , i) ) )
0 commit comments