]> git.lizzy.rs Git - rust.git/blobdiff - compiler/rustc_hir/src/target.rs
Rollup merge of #101494 - jsha:notable-traits-right, r=GuillaumeGomez
[rust.git] / compiler / rustc_hir / src / target.rs
index ea23c48cc53596ac12fbeaf3e2c1488d6253bd85..5917d5e346e371d2a1da00c227dcf2924f4bf51f 100644 (file)
@@ -80,8 +80,13 @@ pub fn from_item(item: &Item<'_>) -> Target {
             ItemKind::ForeignMod { .. } => Target::ForeignMod,
             ItemKind::GlobalAsm(..) => Target::GlobalAsm,
             ItemKind::TyAlias(..) => Target::TyAlias,
-            ItemKind::OpaqueTy(..) => Target::OpaqueTy,
-            ItemKind::ImplTraitPlaceholder(..) => Target::ImplTraitPlaceholder,
+            ItemKind::OpaqueTy(ref opaque) => {
+                if opaque.in_trait {
+                    Target::ImplTraitPlaceholder
+                } else {
+                    Target::OpaqueTy
+                }
+            }
             ItemKind::Enum(..) => Target::Enum,
             ItemKind::Struct(..) => Target::Struct,
             ItemKind::Union(..) => Target::Union,
@@ -105,6 +110,7 @@ pub fn from_def_kind(def_kind: DefKind) -> Target {
             DefKind::GlobalAsm => Target::GlobalAsm,
             DefKind::TyAlias => Target::TyAlias,
             DefKind::OpaqueTy => Target::OpaqueTy,
+            DefKind::ImplTraitPlaceholder => Target::ImplTraitPlaceholder,
             DefKind::Enum => Target::Enum,
             DefKind::Struct => Target::Struct,
             DefKind::Union => Target::Union,