Markus Schiltknecht wrote:
Hi,
I recall having read something about rewriting the parser. Together
with Tom being worried about parser performance and knowing GCC has
switched to a hand written parser some time ago, I suspected bison to
be slow. That's why I've asked.
This has little to do with performance and everything to do with the
insanity which is C++:
http://gnu.teleglobe.net/software/gcc/gcc-3.4/changes.html
* A hand-written recursive-descent C++ parser has replaced the
YACC-derived C++ parser from previous GCC releases. The new
parser contains much improved infrastructure needed for better
parsing of C++ source codes, handling of extensions, and clean
separation (where possible) between proper semantics analysis
and parsing. The new parser fixes many bugs that were found in
the old parser.
Short form: C++ is basically not LALR(1) parseable.
Brian