From kdevelop-devel Wed Jul 13 11:43:59 2005 From: Roberto Raggi Date: Wed, 13 Jul 2005 11:43:59 +0000 To: kdevelop-devel Subject: Re: New parser branch (Was: Dumping the source DOM?) Message-Id: <200507131343.59163.roberto.raggi () trolltech ! com> X-MARC-Message: https://marc.info/?l=kdevelop-devel&m=112127092614449 Hi! On Wednesday 13 July 2005 13:26, Vladimir Prus wrote: > Maybe you meant the opposite? That IDE should access invalid C++ code? If I > have a valid C++ program, I'd expect IDE to parse it without problems. the point is what is a valid source code for you!? for instance this is not valid for me #include int main() { my_cool_function("ciao\n"); } because the IDE doesn't where is the file my-cool-header.h.. KDevelop works just fine in this case. gccxml will fail. THIS IS NOT ACCETABLE! > One possible approach I had in mind was to make parser restartable. First > you run g++ parser on the code till the first token it cannot parse. As you wrong! 1) gcc takes about the 50% of your CPU. it is a bit too much for a background parser(== you can't type in KDevelop and compile your project with the "real" gcc at the same time) 2) it will not help the code completion.. in fact you will not be able to perform any code completion. Because, the code is *UNFINISHED* (please read it again IT IS UNFINISHED).. gcc will not produce any abstract syntax tree, you will not populate the code model, and you will not have the code completion 3) import the source code of a project will take almost the same time to compile it. So you have to wait about 1 hour before load the KDevelop project, 2 hours for kdelibs/kdebase, and so on.. > type more tokens you feed them to the parser. If you go to the beginning of > the file and start typing there, you rewind parser state and start parsing > again. I think I will stop here. This thread starts to be annoying. I'm sorry Vladimir, but I don't think you know what you're talking about. Anyway, good luck with your project. Maybe it is me that I don't see your point and maybe you're right and gccxml and parse *only* valid source code is the right solution for KDevelop. ciao robe _______________________________________________ KDevelop-devel mailing list KDevelop-devel@barney.cs.uni-potsdam.de http://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel