[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r1098204 - /subversion/trunk/subversion/libsvn_wc/questions.c

From: Hyrum K Wright <hyrum_at_hyrumwright.org>
Date: Mon, 2 May 2011 09:03:53 -0500

On Mon, May 2, 2011 at 8:21 AM, Bert Huijben <bert_at_qqmail.nl> wrote:
>
>
>> -----Original Message-----
>> From: Hyrum K Wright [mailto:hyrum_at_hyrumwright.org]
>> Sent: maandag 2 mei 2011 14:46
>> To: Daniel Shahaf
>> Cc: dev_at_subversion.apache.org
>> Subject: Re: svn commit: r1098204 -
>> /subversion/trunk/subversion/libsvn_wc/questions.c
>>
>> On Sun, May 1, 2011 at 2:38 AM, Daniel Shahaf <d.s_at_daniel.shahaf.name>
>> wrote:
>> > Nice series of patches tonight --- what tool / gcc flags did you use
>> > to catch them?
>>
>> I've been playing around with clang-analyzer, a static analyzer that
>> is part of llvm:
>> http://clang-analyzer.llvm.org/
>>
>> There are still a lot of false positives (it has trouble grokking our
>> SVN_ERR_ASSERT() macro), but it's been useful to find the kinds of
>> problems fixed in my patches the last few days.
>>
>> At some point, it might be useful to set up a nightly buildbot to
>> automatically run static analysis on a regular basis.
>
> Maybe you can #define SVN_ERR_ASSERT() to assert() for clang?
> (It might even use assert() as a hint to improve results)

That's a good idea.

We can condition it upon the __clang__ preprocessor macro, but that
would change the definition for people building with clang and not
running the analyzer. I'm not quite sure if clang has a special flag
for when the analyzer is running.

I also found this section in the clang-analyzer docs, talking about
custom assertion handlers:
http://clang-analyzer.llvm.org/annotations.html#custom_assertions
However, it seemed to imply it best dealt with handlers that wouldn't
return, rather than our current method sending errors back up the
stack.

-Hyrum
Received on 2011-05-02 16:04:23 CEST

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.