This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

C++ Parser


The new C++ parser is gradually taking place.  The version now
checked in on the cp-parser-branch has just succeeded in compiling
V3.  (Well, V3 had some non-conforming bits that the new parser
was not tolerant of, so I had to make a few changes to make it
more conformant, which is good anyhow.  Things like missing `typename'
and `template<>'.)

I am too scared to actually run the G++ regression tests, so I have
no idea if the resulting library is actually good for anything.

I have found many places where the old parser didn't work, and we
didn't even know it.  I'm fixing those and creating test-cases...

We will be able to kill lots and lots of other gross code in the
front-end when this is done; try looking at the diffs for
constructor_name_full if you want a small, compact example of the
kind of thing I'm talking about.

There is still a *long* way to go.  Partly, there is now moderate
collateral damage to other parts of the front-end.  For example,
the thing we were calling "type access control" is pretty much
broken at this point.  Our old implementation accepted too many
programs, and didn't reject some it should have -- but it worked
well enough for most purpose.  So, we need to put this back.

Performance still stinks.  There are still tons of FIXMEs.
Error-recovery is still very poor.

You still don't want to use this for anything.

-- 
Mark Mitchell                mark@codesourcery.com
CodeSourcery, LLC            http://www.codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]