@@ -1587,14 +1587,56 @@ ERROR(member_of_objc_implementation_not_objc_or_final,none,
15871587 " %0 %1 does not match any %0 declared in the headers for %2; did you use "
15881588 " the %0's Swift name?" ,
15891589 (DescriptiveDeclKind, ValueDecl *, ValueDecl *))
1590- NOTE(fixit_add_objc_for_objc_implementation ,none,
1591- " add '@objc' to define an Objective-C-compatible %0 not declared in "
1592- " the header" ,
1590+ NOTE(fixit_add_private_for_objc_implementation ,none,
1591+ " add 'private' or 'fileprivate' to define an Objective-C-compatible %0 "
1592+ " not declared in the header" ,
15931593 (DescriptiveDeclKind))
15941594NOTE(fixit_add_final_for_objc_implementation,none,
15951595 " add 'final' to define a Swift %0 that cannot be overridden" ,
15961596 (DescriptiveDeclKind))
15971597
1598+ ERROR(objc_implementation_wrong_category,none,
1599+ " %0 %1 should be implemented in extension for "
1600+ " %select{main class interface|category %2}2, not "
1601+ " %select{main class interface|category %3}3" ,
1602+ (DescriptiveDeclKind, ValueDecl *, Identifier, Identifier))
1603+
1604+ ERROR(objc_implementation_wrong_objc_name,none,
1605+ " selector %0 for %1 %2 not found in header; did you mean %3?" ,
1606+ (ObjCSelector, DescriptiveDeclKind, ValueDecl *, ObjCSelector))
1607+
1608+ ERROR(objc_implementation_wrong_swift_name,none,
1609+ " selector %0 used in header by an %1 with a different name; did you "
1610+ " mean %2?" ,
1611+ (ObjCSelector, DescriptiveDeclKind, DeclName))
1612+
1613+ ERROR(objc_implementation_missing_impl,none,
1614+ " extension for %select{main class interface|category %0}0 should "
1615+ " provide implementation for %1 %2" ,
1616+ (Identifier, DescriptiveDeclKind, ValueDecl *))
1617+
1618+ ERROR(objc_implementation_class_or_instance_mismatch,none,
1619+ " %0 %1 does not match %2 declared in header" ,
1620+ (DescriptiveDeclKind, ValueDecl *, DescriptiveDeclKind))
1621+
1622+ ERROR(objc_implementation_multiple_matching_candidates,none,
1623+ " found multiple implementations that could match %0 %1 with selector %2" ,
1624+ (DescriptiveDeclKind, ValueDecl *, ObjCSelector))
1625+ NOTE(objc_implementation_candidate_impl_here,none,
1626+ " %0 %1 is a potential match%select{|; insert '@objc(%3)' to use it}2" ,
1627+ (DescriptiveDeclKind, ValueDecl *, bool , StringRef))
1628+ NOTE(objc_implementation_requirement_here,none,
1629+ " %0 %1 declared in header here" ,
1630+ (DescriptiveDeclKind, ValueDecl *))
1631+
1632+ ERROR(objc_implementation_multiple_matching_requirements,none,
1633+ " %0 %1 could match several different members declared in the header" ,
1634+ (DescriptiveDeclKind, ValueDecl *))
1635+ NOTE(objc_implementation_one_matched_requirement,none,
1636+ " %0 %1 (with selector %2) is a potential match%select{|; insert "
1637+ " '@objc(%4)' to use it}3" ,
1638+ (DescriptiveDeclKind, ValueDecl *, ObjCSelector, bool , StringRef))
1639+
15981640ERROR(cdecl_not_at_top_level,none,
15991641 " @_cdecl can only be applied to global functions" , ())
16001642ERROR(cdecl_empty_name,none,
0 commit comments