|
From: Baptiste L. <gai...@fr...> - 2003-05-14 20:31:24
|
Welcome back Andre. I saw that you fixed a few parsing bugs. It's now up to
81% being parsed. The major remaining bug concerns parsing constructor
declaration inside class (see file bug/list.txt for details).
I've also experimented with implementing a mini-parser (see MiniParserTest).
It's work well, but I have not yet figured out a good way to collect matched
range. My idea is not to use those mini-parser for the full implementation,
but for small piece of the parser, such as
'class' export-macro class-name ':' inheritance {
Nearly everything to parse the above structure is optional and the code get
difficult to read. I believe such a thing would allow for serious code clean
up, if we found a good way to retrieve the matched range.
One idea I had was something like that:
CStringView classDecl, className;
// parser for: 'class' class-name :
const Xtl::MiniParser &parser2 = (Xtl::StringMiniParser( "class " )
>>
Xtl::CppIdentifierMiniParser()[className]
>> Xtl::CharMiniParser(
':' ))[classDecl];
But this would not work when working with repetition parser (for example, to
matchthe repetition of ('::' id) ). Any ideas ?
Baptiste.
----- Original Message -----
From: "Baptiste Lepilleur" <gai...@fr...>
To: "CppTool Mailing List" <Cpp...@li...>
Sent: Monday, May 05, 2003 10:25 AM
Subject: Re: [Cpptool-develop] astdump runner...
> Fixed a few more bugs:
> - nested case constant (case X::value :)
> - enum parsing (parsed as a declaration list failed (no ';') )
> - support for class EXPORT_MACRO ClassName
> - general macro acceptance in declaration list based on case style
(matched
> if ID_ID(...)). Allow wxWindow & MFC macros to be parsed succesfully
>
> 74% of the files are now being parsed. I've checked
> ast/ogre/ogrebspscenemanager.cpp.html at statement level and the parsing
is
> nearly perfect (spotted two minors bugs).
>
> For the curious, you can find the zipped resultat (I've fixed the url link
> bug):
> http://gaiacrtn.free.fr/temp
> the ast directory you'll find there only contains a subset of the zip file
> (audacity, ogre & rfta).
>
> On major bug remaining concerns the parsing of constructor declaration in
> class declaration.
>
> Baptiste.
|