@@ -739,18 +739,19 @@ def self.deduplication_key(decl, root_decls)
739739 mod_key = module_deduplication_key ( decl )
740740 # Swift extension of objc class
741741 if decl . swift_objc_extension?
742- [ decl . swift_extension_objc_name , :objc_class_and_categories , mod_key ]
742+ [ decl . swift_extension_objc_name , nil , :objc_class_and_categories , mod_key ]
743743 # Swift type or Swift extension of Swift type
744744 elsif mergeable_swift? ( decl )
745- [ decl . usr , decl . name , mod_key ]
745+ [ decl . usr , nil , decl . name , mod_key ]
746746 # Objc categories and classes
747747 elsif mergeable_objc? ( decl , root_decls )
748748 # Using the ObjC name to match swift_objc_extension.
749749 name , _ = decl . objc_category_name || decl . objc_name
750- [ name , :objc_class_and_categories , mod_key ]
750+ [ name , nil , :objc_class_and_categories , mod_key ]
751751 # Non-mergable declarations (funcs, typedefs etc...)
752752 else
753- [ decl . usr , decl . name , decl . type . kind , '' ]
753+ # The typename part works around a Swift bug, jazzy#1396
754+ [ decl . usr , decl . typename , decl . name , decl . type . kind , '' ]
754755 end
755756 end
756757
0 commit comments