@@ -78,6 +78,7 @@ pub enum ProjectWorkspaceKind {
7878 rustc : Result < Box < ( CargoWorkspace , WorkspaceBuildScripts ) > , Option < String > > ,
7979 /// Environment variables set in the `.cargo/config` file.
8080 cargo_config_extra_env : FxHashMap < String , String > ,
81+ set_test : bool ,
8182 } ,
8283 /// Project workspace was specified using a `rust-project.json` file.
8384 Json ( ProjectJson ) ,
@@ -98,6 +99,7 @@ pub enum ProjectWorkspaceKind {
9899 cargo : Option < ( CargoWorkspace , WorkspaceBuildScripts , Option < Arc < anyhow:: Error > > ) > ,
99100 /// Environment variables set in the `.cargo/config` file.
100101 cargo_config_extra_env : FxHashMap < String , String > ,
102+ set_test : bool ,
101103 } ,
102104}
103105
@@ -112,6 +114,7 @@ impl fmt::Debug for ProjectWorkspace {
112114 build_scripts,
113115 rustc,
114116 cargo_config_extra_env,
117+ set_test,
115118 } => f
116119 . debug_struct ( "Cargo" )
117120 . field ( "root" , & cargo. workspace_root ( ) . file_name ( ) )
@@ -126,6 +129,7 @@ impl fmt::Debug for ProjectWorkspace {
126129 . field ( "toolchain" , & toolchain)
127130 . field ( "data_layout" , & target_layout)
128131 . field ( "cargo_config_extra_env" , & cargo_config_extra_env)
132+ . field ( "set_test" , set_test)
129133 . field ( "build_scripts" , & build_scripts. error ( ) . unwrap_or ( "ok" ) )
130134 . finish ( ) ,
131135 ProjectWorkspaceKind :: Json ( project) => {
@@ -137,12 +141,14 @@ impl fmt::Debug for ProjectWorkspace {
137141 . field ( "toolchain" , & toolchain)
138142 . field ( "data_layout" , & target_layout)
139143 . field ( "n_cfg_overrides" , & cfg_overrides. len ( ) ) ;
144+
140145 debug_struct. finish ( )
141146 }
142147 ProjectWorkspaceKind :: DetachedFile {
143148 file,
144149 cargo : cargo_script,
145150 cargo_config_extra_env,
151+ set_test,
146152 } => f
147153 . debug_struct ( "DetachedFiles" )
148154 . field ( "file" , & file)
@@ -154,6 +160,7 @@ impl fmt::Debug for ProjectWorkspace {
154160 . field ( "data_layout" , & target_layout)
155161 . field ( "n_cfg_overrides" , & cfg_overrides. len ( ) )
156162 . field ( "cargo_config_extra_env" , & cargo_config_extra_env)
163+ . field ( "set_test" , set_test)
157164 . finish ( ) ,
158165 }
159166 }
@@ -329,6 +336,7 @@ impl ProjectWorkspace {
329336 rustc,
330337 cargo_config_extra_env,
331338 error : error. map ( Arc :: new) ,
339+ set_test : config. set_test ,
332340 } ,
333341 sysroot,
334342 rustc_cfg,
@@ -423,6 +431,7 @@ impl ProjectWorkspace {
423431 file : detached_file. to_owned ( ) ,
424432 cargo : cargo_script,
425433 cargo_config_extra_env,
434+ set_test : config. set_test ,
426435 } ,
427436 sysroot,
428437 rustc_cfg,
@@ -609,6 +618,7 @@ impl ProjectWorkspace {
609618 build_scripts,
610619 cargo_config_extra_env : _,
611620 error : _,
621+ set_test : _,
612622 } => {
613623 cargo
614624 . packages ( )
@@ -728,7 +738,6 @@ impl ProjectWorkspace {
728738 & self ,
729739 load : FileLoader < ' _ > ,
730740 extra_env : & FxHashMap < String , String > ,
731- set_test : bool ,
732741 ) -> ( CrateGraph , ProcMacroPaths ) {
733742 let _p = tracing:: info_span!( "ProjectWorkspace::to_crate_graph" ) . entered ( ) ;
734743
@@ -742,7 +751,6 @@ impl ProjectWorkspace {
742751 sysroot,
743752 extra_env,
744753 cfg_overrides,
745- set_test,
746754 ) ,
747755 sysroot,
748756 ) ,
@@ -752,6 +760,7 @@ impl ProjectWorkspace {
752760 build_scripts,
753761 cargo_config_extra_env : _,
754762 error : _,
763+ set_test,
755764 } => (
756765 cargo_to_crate_graph (
757766 load,
@@ -761,11 +770,11 @@ impl ProjectWorkspace {
761770 rustc_cfg. clone ( ) ,
762771 cfg_overrides,
763772 build_scripts,
764- set_test,
773+ * set_test,
765774 ) ,
766775 sysroot,
767776 ) ,
768- ProjectWorkspaceKind :: DetachedFile { file, cargo : cargo_script, .. } => (
777+ ProjectWorkspaceKind :: DetachedFile { file, cargo : cargo_script, set_test , .. } => (
769778 if let Some ( ( cargo, build_scripts, _) ) = cargo_script {
770779 cargo_to_crate_graph (
771780 & mut |path| load ( path) ,
@@ -775,7 +784,7 @@ impl ProjectWorkspace {
775784 rustc_cfg. clone ( ) ,
776785 cfg_overrides,
777786 build_scripts,
778- set_test,
787+ * set_test,
779788 )
780789 } else {
781790 detached_file_to_crate_graph (
@@ -784,7 +793,7 @@ impl ProjectWorkspace {
784793 file,
785794 sysroot,
786795 cfg_overrides,
787- set_test,
796+ * set_test,
788797 )
789798 } ,
790799 sysroot,
@@ -818,13 +827,15 @@ impl ProjectWorkspace {
818827 cargo_config_extra_env,
819828 build_scripts : _,
820829 error : _,
830+ set_test : _,
821831 } ,
822832 ProjectWorkspaceKind :: Cargo {
823833 cargo : o_cargo,
824834 rustc : o_rustc,
825835 cargo_config_extra_env : o_cargo_config_extra_env,
826836 build_scripts : _,
827837 error : _,
838+ set_test : _,
828839 } ,
829840 ) => {
830841 cargo == o_cargo
@@ -839,11 +850,13 @@ impl ProjectWorkspace {
839850 file,
840851 cargo : Some ( ( cargo_script, _, _) ) ,
841852 cargo_config_extra_env,
853+ set_test : _,
842854 } ,
843855 ProjectWorkspaceKind :: DetachedFile {
844856 file : o_file,
845857 cargo : Some ( ( o_cargo_script, _, _) ) ,
846858 cargo_config_extra_env : o_cargo_config_extra_env,
859+ set_test : _,
847860 } ,
848861 ) => {
849862 file == o_file
@@ -875,12 +888,11 @@ fn project_json_to_crate_graph(
875888 sysroot : & Sysroot ,
876889 extra_env : & FxHashMap < String , String > ,
877890 override_cfg : & CfgOverrides ,
878- set_test : bool ,
879891) -> ( CrateGraph , ProcMacroPaths ) {
880892 let mut res = ( CrateGraph :: default ( ) , ProcMacroPaths :: default ( ) ) ;
881893 let ( crate_graph, proc_macros) = & mut res;
882894 let ( public_deps, libproc_macro) =
883- sysroot_to_crate_graph ( crate_graph, sysroot, rustc_cfg. clone ( ) , load, set_test ) ;
895+ sysroot_to_crate_graph ( crate_graph, sysroot, rustc_cfg. clone ( ) , load) ;
884896
885897 let r_a_cfg_flag = CfgAtom :: Flag ( sym:: rust_analyzer. clone ( ) ) ;
886898 let mut cfg_cache: FxHashMap < & str , Vec < CfgAtom > > = FxHashMap :: default ( ) ;
@@ -1000,7 +1012,7 @@ fn cargo_to_crate_graph(
10001012 let crate_graph = & mut res. 0 ;
10011013 let proc_macros = & mut res. 1 ;
10021014 let ( public_deps, libproc_macro) =
1003- sysroot_to_crate_graph ( crate_graph, sysroot, rustc_cfg. clone ( ) , load, set_test ) ;
1015+ sysroot_to_crate_graph ( crate_graph, sysroot, rustc_cfg. clone ( ) , load) ;
10041016
10051017 let cfg_options = CfgOptions :: from_iter ( rustc_cfg) ;
10061018
@@ -1187,7 +1199,7 @@ fn detached_file_to_crate_graph(
11871199 let _p = tracing:: info_span!( "detached_file_to_crate_graph" ) . entered ( ) ;
11881200 let mut crate_graph = CrateGraph :: default ( ) ;
11891201 let ( public_deps, _libproc_macro) =
1190- sysroot_to_crate_graph ( & mut crate_graph, sysroot, rustc_cfg. clone ( ) , load, set_test ) ;
1202+ sysroot_to_crate_graph ( & mut crate_graph, sysroot, rustc_cfg. clone ( ) , load) ;
11911203
11921204 let mut cfg_options = CfgOptions :: from_iter ( rustc_cfg) ;
11931205 if set_test {
@@ -1416,7 +1428,6 @@ fn sysroot_to_crate_graph(
14161428 sysroot : & Sysroot ,
14171429 rustc_cfg : Vec < CfgAtom > ,
14181430 load : FileLoader < ' _ > ,
1419- set_test : bool ,
14201431) -> ( SysrootPublicDeps , Option < CrateId > ) {
14211432 let _p = tracing:: info_span!( "sysroot_to_crate_graph" ) . entered ( ) ;
14221433 match sysroot. mode ( ) {
@@ -1439,7 +1450,7 @@ fn sysroot_to_crate_graph(
14391450 ..Default :: default ( )
14401451 } ,
14411452 & WorkspaceBuildScripts :: default ( ) ,
1442- set_test ,
1453+ false ,
14431454 ) ;
14441455
14451456 let mut pub_deps = vec ! [ ] ;
0 commit comments