@@ -243,6 +243,7 @@ pub enum ProcMacroExpansionError {
243243}
244244
245245pub type ProcMacroLoadResult = Result < Vec < ProcMacro > , String > ;
246+ pub type TargetLayoutLoadResult = Result < Arc < str > , Arc < str > > ;
246247
247248#[ derive( Debug , Clone ) ]
248249pub struct ProcMacro {
@@ -265,7 +266,7 @@ pub struct CrateData {
265266 pub display_name : Option < CrateDisplayName > ,
266267 pub cfg_options : CfgOptions ,
267268 pub potential_cfg_options : CfgOptions ,
268- pub target_layout : Option < Arc < str > > ,
269+ pub target_layout : TargetLayoutLoadResult ,
269270 pub env : Env ,
270271 pub dependencies : Vec < Dependency > ,
271272 pub proc_macro : ProcMacroLoadResult ,
@@ -324,7 +325,7 @@ impl CrateGraph {
324325 proc_macro : ProcMacroLoadResult ,
325326 is_proc_macro : bool ,
326327 origin : CrateOrigin ,
327- target_layout : Option < Arc < str > > ,
328+ target_layout : Result < Arc < str > , Arc < str > > ,
328329 ) -> CrateId {
329330 let data = CrateData {
330331 root_file_id,
@@ -647,7 +648,7 @@ mod tests {
647648 Ok ( Vec :: new ( ) ) ,
648649 false ,
649650 CrateOrigin :: CratesIo { repo : None , name : None } ,
650- None ,
651+ Err ( "" . into ( ) ) ,
651652 ) ;
652653 let crate2 = graph. add_crate_root (
653654 FileId ( 2u32 ) ,
@@ -660,7 +661,7 @@ mod tests {
660661 Ok ( Vec :: new ( ) ) ,
661662 false ,
662663 CrateOrigin :: CratesIo { repo : None , name : None } ,
663- None ,
664+ Err ( "" . into ( ) ) ,
664665 ) ;
665666 let crate3 = graph. add_crate_root (
666667 FileId ( 3u32 ) ,
@@ -673,7 +674,7 @@ mod tests {
673674 Ok ( Vec :: new ( ) ) ,
674675 false ,
675676 CrateOrigin :: CratesIo { repo : None , name : None } ,
676- None ,
677+ Err ( "" . into ( ) ) ,
677678 ) ;
678679 assert ! ( graph
679680 . add_dep( crate1, Dependency :: new( CrateName :: new( "crate2" ) . unwrap( ) , crate2) )
@@ -700,7 +701,7 @@ mod tests {
700701 Ok ( Vec :: new ( ) ) ,
701702 false ,
702703 CrateOrigin :: CratesIo { repo : None , name : None } ,
703- None ,
704+ Err ( "" . into ( ) ) ,
704705 ) ;
705706 let crate2 = graph. add_crate_root (
706707 FileId ( 2u32 ) ,
@@ -713,7 +714,7 @@ mod tests {
713714 Ok ( Vec :: new ( ) ) ,
714715 false ,
715716 CrateOrigin :: CratesIo { repo : None , name : None } ,
716- None ,
717+ Err ( "" . into ( ) ) ,
717718 ) ;
718719 assert ! ( graph
719720 . add_dep( crate1, Dependency :: new( CrateName :: new( "crate2" ) . unwrap( ) , crate2) )
@@ -737,7 +738,7 @@ mod tests {
737738 Ok ( Vec :: new ( ) ) ,
738739 false ,
739740 CrateOrigin :: CratesIo { repo : None , name : None } ,
740- None ,
741+ Err ( "" . into ( ) ) ,
741742 ) ;
742743 let crate2 = graph. add_crate_root (
743744 FileId ( 2u32 ) ,
@@ -750,7 +751,7 @@ mod tests {
750751 Ok ( Vec :: new ( ) ) ,
751752 false ,
752753 CrateOrigin :: CratesIo { repo : None , name : None } ,
753- None ,
754+ Err ( "" . into ( ) ) ,
754755 ) ;
755756 let crate3 = graph. add_crate_root (
756757 FileId ( 3u32 ) ,
@@ -763,7 +764,7 @@ mod tests {
763764 Ok ( Vec :: new ( ) ) ,
764765 false ,
765766 CrateOrigin :: CratesIo { repo : None , name : None } ,
766- None ,
767+ Err ( "" . into ( ) ) ,
767768 ) ;
768769 assert ! ( graph
769770 . add_dep( crate1, Dependency :: new( CrateName :: new( "crate2" ) . unwrap( ) , crate2) )
@@ -787,7 +788,7 @@ mod tests {
787788 Ok ( Vec :: new ( ) ) ,
788789 false ,
789790 CrateOrigin :: CratesIo { repo : None , name : None } ,
790- None ,
791+ Err ( "" . into ( ) ) ,
791792 ) ;
792793 let crate2 = graph. add_crate_root (
793794 FileId ( 2u32 ) ,
@@ -800,7 +801,7 @@ mod tests {
800801 Ok ( Vec :: new ( ) ) ,
801802 false ,
802803 CrateOrigin :: CratesIo { repo : None , name : None } ,
803- None ,
804+ Err ( "" . into ( ) ) ,
804805 ) ;
805806 assert ! ( graph
806807 . add_dep(
0 commit comments