Major bug in qmake parser

Andreas Pakulat apaku at gmx.de
Thu Feb 1 01:38:29 UTC 2007


Hi,

some of us already saw this today on IRC I think. Now that 3.4.0 is
released a rather nasty bug showed up in the QMake parser. It seems that
the parser fails to parse even very simple (like 3 line) QMake project
files when run inside KDevelop. It works perfectly fine when run outside
KDevelop and I didn't investigate too much into the issue.

I very much suspect that the problem is the usage of global variables in
the QMake parser, though I'm not sure why it never showed up in tests I
did. 

Anyway, I think I resolved this without changing the parser itself but
instead making bison and flex both create C++ classes for parsing and
lexing and let them work together. I already did the same thing for the
parser in KDevelop4 so it was a rather straight-forward thing.

I know this is really unfortunate as 3.4.0 has just been released and
finally binary packages are available on major distro's, but still I
think we should consider doing a 3.4.0a release with the 
aforementioned qmake bugfixe. It can be isolated easily as it is
completely contained in the buildtools/lib/parsers/qmake directory. The
svn revisions for the change to C++ classes are 628389 and 628390
(I forgot a file in the first commit). 

What do you guys think? As Jens already said yesterday on IRC pushing
out a full new release within a week or two is not a good idea because
the new features are not yet polished.

Andreas

-- 
You will be the victim of a bizarre joke.




More information about the KDevelop-devel mailing list