More than two years ago I
said I was going to work on std::regex
for
libstdc++. I found a few bugs, but as the current
implementation is skeletal and doesn't do anything I didn't
bother checking most of my changes in. Nothing concrete
came of that until a couple of weeks ago when I went back to
it because
I've been reviewing the Regular expressions library
clause of the C++ Final
Committee Draft. There are some implied preconditions
which should be explicit, otherwise it's very easy to stray
into nasal demon territory, which is pretty much guaranteed
to format
your hard drive and
launch missiles. I need to write up a proposal to fix
that, as well as undo the problems introduced to the
definitions of Bitmask Types in the standard library.
When I've done that I might actually apply my fixes to the
skeletal regex
code in libstdc++.
I'm also working on adding nullptr
support
to
libstdc++, based on work done by Magnus Fromreide who added
support for the new keyword to g++. I've recently
made a couple of changes to g++ myself, improving some
diagnostics that
used non-standard terms such as "abstract functions" and
"base initializers". I've also hacked g++ to warn about POD
members which aren't initialised in the constructor's member
initializer list, but that hack is far from production
quality and might never get checked in.
I'm also supposed to be reviewing Scott Meyers' Overview of the New C++ (C++0x) for the ACCU Book Reviews. I haven't made much progress on that and might not make the next publication deadline for CVu. As you'd expect from Scott Meyers, it's erudite and clearly written and I recommend it to anyone interested in the new C++. It's also DRM-free, which is nice.
I don't know if the advogato diary entry form has changed or if it's because I'm now using Chromium on my netbook, but it's impossible to post more than 60 chars, which buggers up URLs.