Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] Static Analysis Framework for CDT

I don't know what exactly is in GCC (I assume we talking about actual gcc parser itself?)
I think it is has most complete and accurate AST, control-flow and data-flow which it needs for optimizations.
On the other hand it only supports "gcc-c" language, while CDT supports lots more c dialects.

I don't think it is really relevant to what I am doing, I will provide a framework to easily integrate with external tools (such as gcc extensions)
and to write CDT AST/PDOM checkers which is not tied to gcc.



Doug Schaefer wrote:
Cool. Elena, could you elaborate on what's in gcc that's not in the CDT
AST/Bindings?

Thanks,
Doug.

On Fri, 2009-04-17 at 12:24 -0400, Elena Laskavaia wrote:
Parts of it implemented in ptp. It is not good as gcc but it different technology anyway.

Dominique Toupin wrote:
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
_______________________________________________
cdt-dev mailing list
cdt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/cdt-dev


Back to the top