From: "Jonathan I. Maletic, Ph.D."
<jmaletic(a)cs.kent.edu>
Date: May 13, 2008 7:41:23 PM CEDT
To: Stéphane Ducasse <stephane.ducasse(a)inria.fr>fr>, Michael Collard
<collard(a)cs.kent.edu
Subject: Re: A qustion about srcML
Thanks. I was thinking that I could bridge it to our tools :)
May be this question will help me to understand:
when you have an AST, are the symbols resolved ? I guess not, I
imagine that srcML gives you the parsed text as input.
which is already something in C++ :)
Stef,
We have a separate tool to do name resolution, symbol table etc.
Name resolution is particularly difficult and this tool is not as
robust as the translator. We've not been handing the name
resolution stuff out until will do some more testing. As you said C
++ is hell. We plan to get these other tools cleaned up over the
summer.
So just running the translator you get un-resolved names.
Jonathan
Stef,
We markup up down to the identifier level. But expressions are
not marked completely. That is identifiers in expressions are
marked but the entire AST for the expression is not done. So all
parameter lists are marked etc.
Otherwise, everything else is marked up including preprocessor
statements, templates, and comments. Nothing is removed from the
original code code. You can get the exact original code back
including whitespace.
Does this help?
It's fast and robust. A number of folks are using it including
some people in industry. So it actually works as opposed to just
a prototype.
I like that.
C++ is so much a hell. A friend of mine tried CDT and the code is
really strange (you have to walk several structure to go from a
method to its class).
Stef