[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [cdt-dev] Static Analysis Framework for CDT
|
This is indeed the best setup, everything we can check rapidly we can do
it inside CDT even before the code is build.
Then the complicated/longer analysis are done by external tools, some of
those analysis are running at night.
What I was pointing out below is we might be able to use GCC plugins for
complicated/long analysis, we would then have a complete static analysis
framework in CDT.
"If you are doing simple rules, CDT alone should be OK but if you need
complicated rules (e.g. data-flow analysis) then you might want to also
look at GCC plugin"
> -----Original Message-----
> From: cdt-dev-bounces@xxxxxxxxxxx
> [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Schorn, Markus
> Sent: 20-Apr-09 04:03
> To: CDT General developers list.
> Subject: RE: [cdt-dev] Static Analysis Framework for CDT
>
> I don't have plans to work on something like that. However, I
> think there is lots of value we could add to CDT by doing
> some analysis on the parser side. This is not because we can
> do better analysis than gcc or other tools, it is because we
> could do some analyis much earlier, when you edit your code
> and could ideally also provide quick-fixes. The most simple
> example is the detection of assignments in conditions 'if (a
> = 0)', which is easy to detect and easy to fix. CDT should
> offer support for that.
>
> Markus.
>
> > -----Original Message-----
> > From: cdt-dev-bounces@xxxxxxxxxxx
> > [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Dominique Toupin
> > Sent: Friday, April 17, 2009 6:08 PM
> > To: CDT General developers list.
> > Subject: RE: [cdt-dev] Static Analysis Framework for CDT
> > Importance: Low
> >
> >
> > Markus, are you planning on providing advanced static analysis e.g.
> > data-flow analysis :-)
> >
> > > -----Original Message-----
> > > From: cdt-dev-bounces@xxxxxxxxxxx
> > > [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Doug Schaefer
> > > Sent: 17-Apr-09 11:53
> > > To: CDT General developers list.
> > > Subject: RE: [cdt-dev] Static Analysis Framework for CDT
> > >
> > > Then I suggest that you need to take a closer look at the
> > CDT core ;)
> > > Markus's EclipseCon presentation would be a great place to start.
> > >
> > > Doug.
> > >
> > > On Fri, 2009-04-17 at 11:21 -0400, Dominique Toupin wrote:
> > > > In practice I don't think CDT parser has the same
> > > info/capability as
> > > > GCC, GCC has a lot of info about the code and we can do
> > > advance static
> > > > analysis (not grep like) with this info.
> > > > I am not suggesting to integrate GCC code into CDT, the
> > GCC static
> > > > analysis would be an external tool just like GCC/GDB today.
> > > > Even if it's an external tool it brings a lot of features
> > > to CDT, it's
> > > > just like compile (GCC) and debug (GDB) today.
> > > >
> > > > > -----Original Message-----
> > > > > From: cdt-dev-bounces@xxxxxxxxxxx
> > > > > [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of
> Doug Schaefer
> > > > > Sent: 17-Apr-09 09:52
> > > > > To: CDT General developers list.
> > > > > Subject: Re: [cdt-dev] Static Analysis Framework for CDT
> > > > >
> > > > > My bigger concern is that all GCC plug-ins must be GPL. I'd
> > > > > especially be worried about plug-ins written
> > specifically for the
> > > > > CDT and whether that affects the definition of "derived"
> > > > > and thus, causing us legal grief.
> > > > >
> > > > > At any rate, theoretically, the CDT parsers already
> > > create the same
> > > > > information that gcc would. And we can avoid any legal
> > > problems that
> > > > > way.
> > > > >
> > > > > Doug.
> > > > >
> > > > > On Fri, 2009-04-17 at 09:43 -0400, Elena Laskavaia wrote:
> > > > > > GCC plugins means it would be part of GCC which is external
> > > > > to eclipse?
> > > > > > If so it can be just run as external and not part of the
> > > > > framework which is Java based.
> > > > > >
> > > > > > Dominique Toupin wrote:
> > > > > > > Hi Elena,
> > > > > > >
> > > > > > > If you are doing simple rules, CDT alone should be OK
> > > but if you
> > > > > > > need complicated rules (e.g. data-flow analysis) then you
> > > > > might want
> > > > > > > to also look at GCC plugin
> > > > > http://gcc.gnu.org/wiki/GCC_Plugins, they
> > > > > > > did progress and hopefully the architecture will be
> > > > > resolve for the
> > > > > > > GCC summit (http://gccsummit.org/2009/), some CDT
> > committers
> > > > > > > will also attend the GCC summit (at least Francois
> > and Marc).
> > > > > > >
> > > > > > > Last year at the GCC summit some static analysis tools
> > > > > based on GCC
> > > > > > > where presented e.g.
> > > https://developer.mozilla.org/en/Treehydra,
> > > > > > >
> > > > >
> > >
> https://developer.mozilla.org/en/Dehydra?rdfrom=https%3A%2F%2Fwiki.m
> > > > > > > ozil
> > la.org%2Findex.php%3Ftitle%3DDehydra_GCC%26redirect%3Dno.
> > > > > > >
> > > > > > > If we can have good static analysis rules with GCC
> > > > > plugins it will
> > > > > > > make sense to integrate those into CDT.
> > > > > > >
> > > > > > > Dominique
> > > > > > >
> > > > > > >
> > > > > > >> -----Original Message-----
> > > > > > >> From: cdt-dev-bounces@xxxxxxxxxxx
> > > > > > >> [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Elena
> > > > > > >> Laskavaia
> > > > > > >> Sent: 16-Apr-09 22:44
> > > > > > >> To: CDT General developers list.
> > > > > > >> Subject: [cdt-dev] Static Analysis Framework for CDT
> > > > > > >>
> > > > > > >> This is something I am doing in my spare time -
> I want to
> > > > > > >> create static analysis framework for CDT, light
> > weigh set of
> > > > > classes that
> > > > > > >> allow to have common interface for dealing with problems
> > > > > produced
> > > > > > >> by static analysis tools (and some default checkers,
> > > > > such what JDT
> > > > > > >> has, i.e Potential Null Pointer Dereference, etc).
> > > > > > >>
> > > > > > >> See design details at:
> > > > > > >> http://wiki.eclipse.org/CDT/designs/StaticAnalysis
> > > > > > >> _______________________________________________
> > > > > > >> cdt-dev mailing list
> > > > > > >> cdt-dev@xxxxxxxxxxx
> > > > > > >> https://dev.eclipse.org/mailman/listinfo/cdt-dev
> > > > > > >>
> > > > > > > _______________________________________________
> > > > > > > cdt-dev mailing list
> > > > > > > cdt-dev@xxxxxxxxxxx
> > > > > > > https://dev.eclipse.org/mailman/listinfo/cdt-dev
> > > > > > _______________________________________________
> > > > > > cdt-dev mailing list
> > > > > > cdt-dev@xxxxxxxxxxx
> > > > > > https://dev.eclipse.org/mailman/listinfo/cdt-dev
> > > > > _______________________________________________
> > > > > cdt-dev mailing list
> > > > > cdt-dev@xxxxxxxxxxx
> > > > > https://dev.eclipse.org/mailman/listinfo/cdt-dev
> > > > >
> > > > _______________________________________________
> > > > cdt-dev mailing list
> > > > cdt-dev@xxxxxxxxxxx
> > > > https://dev.eclipse.org/mailman/listinfo/cdt-dev
> > > _______________________________________________
> > > cdt-dev mailing list
> > > cdt-dev@xxxxxxxxxxx
> > > https://dev.eclipse.org/mailman/listinfo/cdt-dev
> > >
> > _______________________________________________
> > cdt-dev mailing list
> > cdt-dev@xxxxxxxxxxx
> > https://dev.eclipse.org/mailman/listinfo/cdt-dev
> >
> _______________________________________________
> cdt-dev mailing list
> cdt-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/cdt-dev
>