[cfe-commits] r75650 - in /cfe/trunk: include/clang/AST/Type.h include/clang/Analysis/PathSensitive/SVals.h lib/AST/ASTContext.cpp lib/Analysis/CheckObjCInstMethSignature.cpp lib/CodeGen/CGExprScalar.cpp lib/Sema/SemaExpr.cpp lib/Sema/SemaExprCXX.cpp
Fariborz Jahanian
fjahanian at apple.com
Tue Jul 14 12:07:32 PDT 2009
On Jul 14, 2009, at 11:53 AM, steve naroff wrote:
>
> On Jul 14, 2009, at 2:33 PM, Fariborz Jahanian wrote:
>
>> Maybe this was discussed before. Sorry for asking again. Why do we
>> exclude block pointers?
>>
>
> No problem...we didn't discuss it at length. I think it would make
> sense, especially since Type::getPointeeType() allows block pointers.
>
> If I include block pointers, the following errors turn into warnings
> (which is fine with me...).
>
> /Users/snaroff/llvm/Debug/bin/clang-cc -fsyntax-only -verify /Users/
> snaroff/llvm/tools/clang/test/Sema/block-misc.c -fblocks
> Incorrect Output:
> Errors expected but not seen:
> Line 170: invalid operands
> Line 174: invalid operands to binary expression
> Line 176: invalid operands to binary expression
> Line 178: invalid operands to binary expression
> Line 179: invalid operands to binary expression
> Line 180: invalid operands to binary expression
> Line 181: invalid operands to binary expression
> Warnings seen but not expected:
> Line 170: ordered comparison between pointer and integer ('void (^)
> (int)' and 'int')
> Line 174: comparison between pointer and integer ('void (^)(int)'
> and 'int')
> Line 176: comparison between pointer and integer ('int' and 'void
> (^)(int)')
> Line 178: ordered comparison between pointer and integer ('void (^)
> (int)' and 'int')
> Line 179: ordered comparison between pointer and integer ('void (^)
> (int)' and 'int')
> Line 180: ordered comparison between pointer and integer ('int' and
> 'void (^)(int)')
> Line 181: ordered comparison between pointer and integer ('int' and
> 'void (^)(int)')
>
> What do you think?
We should fix all these if these will be the side-effects. I don't
feel strongly about adding block pointer to your
AnyPointer. But if AnyPointer includes function pointers then there is
a case asking for it.
- Fariborz
>
More information about the cfe-commits
mailing list