@@ -1373,7 +1373,7 @@ ERROR(nominal_type_not_attribute,none,
1373
1373
1374
1374
ERROR(mutating_invalid_global_scope,none, " %0 is only valid on methods" ,
1375
1375
(SelfAccessKind))
1376
- ERROR(mutating_invalid_classes,none, " %0 is not valid on %1s in "
1376
+ ERROR(mutating_invalid_classes,none, " %0 is not valid on %1s in "
1377
1377
" %select{classes|class-bound protocols}2" ,
1378
1378
(SelfAccessKind, DescriptiveDeclKind, bool ))
1379
1379
@@ -2547,7 +2547,7 @@ NOTE(overridden_near_match_here,none,
2547
2547
ERROR(override_decl_extension,none,
2548
2548
" %select{|non-@objc}0 %2 %3 %select{"
2549
2549
" is declared in extension of %4 and cannot be overridden|"
2550
- " declared in %4 cannot be overridden from extension}1" ,
2550
+ " declared in %4 cannot be overridden from extension}1" ,
2551
2551
(bool , bool , DescriptiveDeclKind, DeclName, DeclName))
2552
2552
NOTE(overridden_here,none,
2553
2553
" overridden declaration is here" , ())
@@ -2922,6 +2922,14 @@ ERROR(broken_comparable_requirement,none,
2922
2922
" Comparable protocol is broken: unexpected requirement" , ())
2923
2923
ERROR(broken_equatable_requirement,none,
2924
2924
" Equatable protocol is broken: unexpected requirement" , ())
2925
+ WARNING(synthesized_equatable_nonsythesized_comparable_fixit,none,
2926
+ " compiler synthesized implementation of operator '==(lhs:rhs:)' "
2927
+ " for 'Equatable' conformance for %0 may not match behavior of "
2928
+ " custom implementation of operator '<(lhs:rhs:)'" ,
2929
+ (Type))
2930
+ FIXIT(insert_equals_function_declaration,
2931
+ " static func == (lhs: %0, rhs: $0) -> Bool {\n <#code#>\n }\n\n " ,
2932
+ (Type))
2925
2933
ERROR(broken_hashable_requirement,none,
2926
2934
" Hashable protocol is broken: unexpected requirement" , ())
2927
2935
ERROR(broken_hashable_no_hasher,none,
@@ -3021,7 +3029,7 @@ NOTE(automatic_protocol_synthesis_unsupported,none,
3021
3029
" automatic synthesis of '%0' is not supported for %select{classes|structs}1" ,
3022
3030
(StringRef, unsigned ))
3023
3031
NOTE(comparable_synthesis_raw_value_not_allowed, none,
3024
- " enum declares raw type %0, preventing synthesized conformance of %1 to %2" ,
3032
+ " enum declares raw type %0, preventing synthesized conformance of %1 to %2" ,
3025
3033
(Type, Type, Type))
3026
3034
3027
3035
// Dynamic Self
@@ -3512,15 +3520,15 @@ ERROR(unordered_adjacent_operators,none,
3512
3520
ERROR(missing_builtin_precedence_group,none,
3513
3521
" broken standard library: missing builtin precedence group %0" ,
3514
3522
(Identifier))
3515
- WARNING(nan_comparison, none,
3523
+ WARNING(nan_comparison, none,
3516
3524
" comparison with '.nan' using %0 is always %select{false|true}1, use "
3517
3525
" '%2.isNaN' to check if '%3' %select{is not a number|is a number}1" ,
3518
3526
(Identifier, bool , StringRef, StringRef))
3519
- WARNING(nan_comparison_without_isnan, none,
3520
- " comparison with '.nan' using %0 is always %select{false|true}1" ,
3527
+ WARNING(nan_comparison_without_isnan, none,
3528
+ " comparison with '.nan' using %0 is always %select{false|true}1" ,
3521
3529
(Identifier, bool ))
3522
- WARNING(nan_comparison_both_nan, none,
3523
- " '.nan' %0 '.nan' is always %select{false|true}1" ,
3530
+ WARNING(nan_comparison_both_nan, none,
3531
+ " '.nan' %0 '.nan' is always %select{false|true}1" ,
3524
3532
(StringRef, bool ))
3525
3533
3526
3534
// If you change this, also change enum TryKindForDiagnostics.
@@ -4317,7 +4325,7 @@ NOTE(note_add_nonisolated_to_decl,none,
4317
4325
" add 'nonisolated' to %0 to make this %1 not isolated to the actor" ,
4318
4326
(DeclName, DescriptiveDeclKind))
4319
4327
NOTE(note_add_globalactor_to_function,none,
4320
- " add '@%0' to make %1 %2 part of global actor %3" ,
4328
+ " add '@%0' to make %1 %2 part of global actor %3" ,
4321
4329
(StringRef, DescriptiveDeclKind, DeclName, Type))
4322
4330
FIXIT(insert_globalactor_attr, " @%0 " , (Type))
4323
4331
ERROR(not_objc_function_async,none,
@@ -4807,7 +4815,7 @@ ERROR(differentiable_function_type_invalid_result,none,
4807
4815
" %select{| and satisfy '%0 == %0.TangentVector'}1, but the enclosing "
4808
4816
" function type is '@differentiable%select{|(_linear)}1'" ,
4809
4817
(StringRef, bool ))
4810
- ERROR(differentiable_function_type_no_differentiability_parameters,
4818
+ ERROR(differentiable_function_type_no_differentiability_parameters,
4811
4819
none,
4812
4820
" '@differentiable' function type requires at least one differentiability "
4813
4821
" parameter, i.e. a non-'@noDerivative' parameter whose type conforms to "
0 commit comments