@@ -290,6 +290,7 @@ macro_rules! bootstrap_tool {
290
290
( $(
291
291
$name: ident, $path: expr, $tool_name: expr
292
292
$( , is_external_tool = $external: expr) *
293
+ $( , is_unstable_tool = $unstable: expr) *
293
294
$( , features = $features: expr) *
294
295
;
295
296
) +) => {
@@ -340,7 +341,12 @@ macro_rules! bootstrap_tool {
340
341
compiler: self . compiler,
341
342
target: self . target,
342
343
tool: $tool_name,
343
- mode: Mode :: ToolBootstrap ,
344
+ mode: if false $( || $unstable) * {
345
+ // use in-tree libraries for unstable features
346
+ Mode :: ToolStd
347
+ } else {
348
+ Mode :: ToolBootstrap
349
+ } ,
344
350
path: $path,
345
351
is_optional_tool: false ,
346
352
source_type: if false $( || $external) * {
@@ -367,7 +373,7 @@ bootstrap_tool!(
367
373
Tidy , "src/tools/tidy" , "tidy" ;
368
374
Linkchecker , "src/tools/linkchecker" , "linkchecker" ;
369
375
CargoTest , "src/tools/cargotest" , "cargotest" ;
370
- Compiletest , "src/tools/compiletest" , "compiletest" ;
376
+ Compiletest , "src/tools/compiletest" , "compiletest" , is_unstable_tool = true ;
371
377
BuildManifest , "src/tools/build-manifest" , "build-manifest" ;
372
378
RemoteTestClient , "src/tools/remote-test-client" , "remote-test-client" ;
373
379
RustInstaller , "src/tools/rust-installer" , "fabricate" , is_external_tool = true ;
0 commit comments