r198049 - Parameterizing some MS property-related diagnostics. No functional changes intended.

Alp Toker alp at nuanti.com
Thu Dec 26 08:35:38 PST 2013


On 26/12/2013 16:33, Aaron Ballman wrote:
> Yeah, I hate the current names, but "accessor" is usually the getter,
> and "mutator" is the setter (at least in my experience). I wanted to
> be clear, if a bit verbose. But I can be convinced otherwise. :-)

In Microsoft property lingo, "The accessor of a property contains the 
executable statements associated with getting (reading or computing) or 
setting (writing) the property." - MSDN.

Alp.

>
> ~Aaron
>
> On Thu, Dec 26, 2013 at 11:29 AM, Alp Toker <alp at nuanti.com> wrote:
>> On 26/12/2013 15:46, Aaron Ballman wrote:
>>> Author: aaronballman
>>> Date: Thu Dec 26 09:46:38 2013
>>> New Revision: 198049
>>>
>>> URL: http://llvm.org/viewvc/llvm-project?rev=198049&view=rev
>>> Log:
>>> Parameterizing some MS property-related diagnostics. No functional changes
>>> intended.
>>>
>>> Modified:
>>>       cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
>>>       cfe/trunk/lib/Sema/SemaPseudoObject.cpp
>>>
>>> Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td?rev=198049&r1=198048&r2=198049&view=diff
>>>
>>> ==============================================================================
>>> --- cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td (original)
>>> +++ cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td Thu Dec 26
>>> 09:46:38 2013
>>> @@ -1950,14 +1950,10 @@ def err_anonymous_property: Error<
>>>      "anonymous property is not supported">;
>>>    def err_property_is_variably_modified: Error<
>>>      "property '%0' has a variably modified type">;
>>> -def err_no_getter_for_property : Error<
>>> -  "no getter defined for property '%0'">;
>>> -def err_no_setter_for_property : Error<
>>> -  "no setter defined for property '%0'">;
>>> -def error_cannot_find_suitable_getter : Error<
>>> -  "cannot find suitable getter for property '%0'">;
>>> -def error_cannot_find_suitable_setter : Error<
>>> -  "cannot find suitable setter for property '%0'">;
>>> +def err_no_getter_setter_for_property : Error<
>>> +  "no %select{getter|setter}0 defined for property '%1'">;
>>> +def error_cannot_find_suitable_getter_setter : Error<
>>> +  "cannot find suitable %select{getter|setter}0 for property '%1'">;
>>>      def err_attribute_aligned_not_power_of_two : Error<
>>>      "requested alignment is not a power of 2">;
>>>
>>> Modified: cfe/trunk/lib/Sema/SemaPseudoObject.cpp
>>> URL:
>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaPseudoObject.cpp?rev=198049&r1=198048&r2=198049&view=diff
>>>
>>> ==============================================================================
>>> --- cfe/trunk/lib/Sema/SemaPseudoObject.cpp (original)
>>> +++ cfe/trunk/lib/Sema/SemaPseudoObject.cpp Thu Dec 26 09:46:38 2013
>>> @@ -1393,8 +1393,8 @@ Expr *MSPropertyOpBuilder::rebuildAndCap
>>>      ExprResult MSPropertyOpBuilder::buildGet() {
>>>      if (!RefExpr->getPropertyDecl()->hasGetter()) {
>>> -    S.Diag(RefExpr->getMemberLoc(), diag::err_no_getter_for_property)
>>> -      << RefExpr->getPropertyDecl()->getName();
>>> +    S.Diag(RefExpr->getMemberLoc(),
>>> diag::err_no_getter_setter_for_property)
>>> +      << 0 /* getter */ << RefExpr->getPropertyDecl()->getName();
>>>        return ExprError();
>>>      }
>>
>> Nice cleanup Aaron.
>>
>> get and set functions are known as accessors, so s/getter_setter/accessor/
>> throughout the patch?
>>
>> Alp.
>>
>>
>>
>>>    @@ -1408,7 +1408,8 @@ ExprResult MSPropertyOpBuilder::buildGet
>>>        RefExpr->isArrow() ? tok::arrow : tok::period, SS, SourceLocation(),
>>>        GetterName, 0, true);
>>>      if (GetterExpr.isInvalid()) {
>>> -    S.Diag(RefExpr->getMemberLoc(),
>>> diag::error_cannot_find_suitable_getter)
>>> +    S.Diag(RefExpr->getMemberLoc(),
>>> +           diag::error_cannot_find_suitable_getter_setter) << 0 /* getter
>>> */
>>>          << RefExpr->getPropertyDecl()->getName();
>>>        return ExprError();
>>>      }
>>> @@ -1422,8 +1423,8 @@ ExprResult MSPropertyOpBuilder::buildGet
>>>    ExprResult MSPropertyOpBuilder::buildSet(Expr *op, SourceLocation sl,
>>>                                             bool captureSetValueAsResult) {
>>>      if (!RefExpr->getPropertyDecl()->hasSetter()) {
>>> -    S.Diag(RefExpr->getMemberLoc(), diag::err_no_setter_for_property)
>>> -      << RefExpr->getPropertyDecl()->getName();
>>> +    S.Diag(RefExpr->getMemberLoc(),
>>> diag::err_no_getter_setter_for_property)
>>> +      << 1 /* setter */ << RefExpr->getPropertyDecl()->getName();
>>>        return ExprError();
>>>      }
>>>    @@ -1437,7 +1438,8 @@ ExprResult MSPropertyOpBuilder::buildSet
>>>        RefExpr->isArrow() ? tok::arrow : tok::period, SS, SourceLocation(),
>>>        SetterName, 0, true);
>>>      if (SetterExpr.isInvalid()) {
>>> -    S.Diag(RefExpr->getMemberLoc(),
>>> diag::error_cannot_find_suitable_setter)
>>> +    S.Diag(RefExpr->getMemberLoc(),
>>> +           diag::error_cannot_find_suitable_getter_setter) << 1 /* setter
>>> */
>>>          << RefExpr->getPropertyDecl()->getName();
>>>        return ExprError();
>>>      }
>>>
>>>
>>> _______________________________________________
>>> cfe-commits mailing list
>>> cfe-commits at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>>
>> --
>> http://www.nuanti.com
>> the browser experts
>>

-- 
http://www.nuanti.com
the browser experts




More information about the cfe-commits mailing list