[cfe-commits] r130036 - in /cfe/trunk: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaCXXCast.cpp test/SemaCXX/reinterpret-cast.cpp
Argyrios Kyrtzidis
kyrtzidis at apple.com
Fri Apr 22 18:19:59 PDT 2011
On Apr 22, 2011, at 5:06 PM, John McCall wrote:
> On Apr 22, 2011, at 4:57 PM, Argyrios Kyrtzidis wrote:
>> ==============================================================================
>> --- cfe/trunk/lib/Sema/SemaCXXCast.cpp (original)
>> +++ cfe/trunk/lib/Sema/SemaCXXCast.cpp Fri Apr 22 18:57:57 2011
>> @@ -1327,9 +1327,18 @@
>> // same effect as the conversion *reinterpret_cast<T*>(&x) with the
>> // built-in & and * operators.
>>
>> - // Cannot get address of a bitfield.
>> - if (SrcExpr.get()->getObjectKind() == OK_BitField) {
>> - msg = diag::err_bad_reinterpret_cast_bitfield;
>> + const char *inappropriate = 0;
>> + switch (SrcExpr.get()->getObjectKind()) {
>> + default: break;
>> + case OK_BitField: inappropriate = "bit-field"; break;
>> + case OK_VectorComponent: inappropriate = "vector element"; break;
>> + case OK_ObjCProperty: inappropriate = "property expression"; break;
>> + }
>
> Please do an exhaustive switch, especially since there's only one other case. :)
Done.
>
> John.
More information about the cfe-commits
mailing list