File tree 1 file changed +9
-5
lines changed
compiler/rustc_target/src/spec
1 file changed +9
-5
lines changed Original file line number Diff line number Diff line change @@ -1739,11 +1739,15 @@ impl TargetOptions {
1739
1739
self . lld_flavor_json ,
1740
1740
self . linker_is_gnu_json ,
1741
1741
) ;
1742
- match linker_flavor {
1743
- LinkerFlavor :: Gnu ( _, Lld :: Yes )
1744
- | LinkerFlavor :: Darwin ( _, Lld :: Yes )
1745
- | LinkerFlavor :: Msvc ( Lld :: Yes ) => { }
1746
- _ => add_link_args_iter ( args, linker_flavor, args_json. iter ( ) . cloned ( ) ) ,
1742
+ // Normalize to no lld to avoid asserts.
1743
+ let linker_flavor = match linker_flavor {
1744
+ LinkerFlavor :: Gnu ( cc, _) => LinkerFlavor :: Gnu ( cc, Lld :: No ) ,
1745
+ LinkerFlavor :: Darwin ( cc, _) => LinkerFlavor :: Darwin ( cc, Lld :: No ) ,
1746
+ LinkerFlavor :: Msvc ( _) => LinkerFlavor :: Msvc ( Lld :: No ) ,
1747
+ _ => linker_flavor,
1748
+ } ;
1749
+ if !args. contains_key ( & linker_flavor) {
1750
+ add_link_args_iter ( args, linker_flavor, args_json. iter ( ) . cloned ( ) ) ;
1747
1751
}
1748
1752
}
1749
1753
}
You can’t perform that action at this time.
0 commit comments