New parser branch (Was: Dumping the source DOM?)

Vladimir Prus ghost at
Wed Jul 13 11:32:02 UTC 2005

On Wednesday 13 July 2005 13:20, Roberto Raggi wrote:
> Hi
> On Wednesday 13 July 2005 08:00, Vladimir Prus wrote:
> > Speaking of Boost, when I use the CVS version of it, and try to process a
> > file containing just:
> >
> >   #include <boost/program_options.hpp>
> >
> > I get:
> >
> > $ ./r++ -I/home/ghost/Work/boost-rc po.cpp
> > po.cpp:3: unexpected token 'token:0 -  '
> >
> > While "g++" has no problems. What should I do?
> your report is just great!!! THANK YOU! I will try to reply you as best I
> can.
> [rraggi at rabagast kdevelop4-parser]$ cat ~/work/x/test.cpp
> #include <boost/program_options.hpp>
> [rraggi at rabagast kdevelop4-parser]$
> [rraggi at rabagast kdevelop4-parser]$ ./r++ ~/work/x/test.cpp
> preprocessed. compiled 48346 loc

Do you mean that it works for you? Well, it works for me with Boost 1.32, but 
not with CVS version.

> BTW Actually I don't care if you want to replace r++ with gccxml. I mean, I
> *don't have* to convince you or the other developers that r++ is the best
> alternative for KDevelop. Actually you can go forward and replace the whole
> programming language framework. I did it 3-4 years ago when we switched
> from KDevelop 2.x to gideon(3.x), so I don't mind if someone else will
> replace my code. The point is I need features like code refactoring and
> incremental parsing in my IDE. So I'm going to implement the support for
> such features. That's why I wrote the KDevelop parser generator, the c++
> parser, and KDevProjectManager(the programming language framework needs a
> better project manager).

To make my position clear, I'm not biased against your work. If it can parse 
Boost, then it's good enough for KDevelop.

> About the code completion. The problem is not the parser. We already have
> all the informations we need. The real problem is the Catalog/CodeModel(==
> the symbol table). We don't store things like templates, operators, casts,
> and so on.. 

Oh... you mean the parser provides this, but symbol table can't store it?

- Volodya

More information about the KDevelop-devel mailing list