Skip to content

Commit d0d9099

Browse files
committed
rework on the feedback
1 parent 474a2d9 commit d0d9099

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

include/swift/AST/DiagnosticsSema.def

+4-1
Original file line numberDiff line numberDiff line change
@@ -1718,7 +1718,10 @@ ERROR(functions_mutating_and_not,none,
17181718
"method must not be declared both %0 and %1",
17191719
(SelfAccessKind, SelfAccessKind))
17201720
ERROR(static_functions_not_mutating,none,
1721-
"nonmutating or mutating modifiers cannot be used on static functions because they do not operate on instance properties or self", ())
1721+
"%0 modifiers cannot be used on static functions",
1722+
(SelfAccessKind))
1723+
NOTE(static_functions_not_mutating_detail,none,
1724+
"%0 modifiers cannot access instance properties or self", (SelfAccessKind))
17221725

17231726
ERROR(readwriter_mutatingness_differs_from_reader_or_writer_mutatingness,none,
17241727
"%0 cannot be %1 when "

lib/Sema/TypeCheckAttr.cpp

+2-1
Original file line numberDiff line numberDiff line change
@@ -603,7 +603,8 @@ void AttributeChecker::visitMutationAttr(DeclAttribute *attr) {
603603
}
604604
// Verify that we don't have a static function.
605605
if (FD->isStatic())
606-
diagnoseAndRemoveAttr(attr, diag::static_functions_not_mutating);
606+
diagnoseAndRemoveAttr(attr, diag::static_functions_not_mutating, attrModifier);
607+
diagnose(attr->getLocation(), diag::static_functions_not_mutating_detail, attrModifier);
607608
}
608609

609610
void AttributeChecker::visitDynamicAttr(DynamicAttr *attr) {

0 commit comments

Comments
 (0)