[cfe-commits] r162156 - in /cfe/trunk: lib/StaticAnalyzer/Core/ExprEngine.cpp test/Analysis/exceptions.mm
John McCall
rjmccall at apple.com
Sun Aug 19 14:27:55 PDT 2012
On Aug 17, 2012, at 7:59 PM, Jordan Rose wrote:
> On Aug 17, 2012, at 19:15 , Anna Zaks <ganna at apple.com> wrote:
>> On Aug 17, 2012, at 5:30 PM, Jordan Rose wrote:
>>
>>> Modified: cfe/trunk/lib/StaticAnalyzer/Core/ExprEngine.cpp
>>> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/ExprEngine.cpp?rev=162156&r1=162155&r2=162156&view=diff
>>> ==============================================================================
>>> --- cfe/trunk/lib/StaticAnalyzer/Core/ExprEngine.cpp (original)
>>> +++ cfe/trunk/lib/StaticAnalyzer/Core/ExprEngine.cpp Fri Aug 17 19:30:20 2012
>>> @@ -889,7 +889,7 @@
>>> case Stmt::ObjCAtThrowStmtClass: {
>>> // FIXME: This is not complete. We basically treat @throw as
>>> // an abort.
>>> - Bldr.generateNode(S, Pred, Pred->getState());
>>> + Bldr.generateNode(S, Pred, Pred->getState(), /*IsSink=*/true);
>> Please remove the C style comment.
>> You can mention that we are generating a sink in a comment or better yet add another API to the node builder spelling out what we do:
>> "Bldr.generateSink"
>
> This is a common way to annotate otherwise cryptic parameters in Clang, though admittedly most of the uses in the analyzer specifically were introduced by me. I don't understand why it's an issue, at least right now. (I agree that in this case a "generateSink" method would be a little clearer.)
FWIW, I generally find myself wanting to use binary enums for most of
these things eventually. That would be nicer if clang were using C++11,
of course.
John.
More information about the cfe-commits
mailing list