This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: state of libstdcxx_so_7-branch
On May 3, 2007, at 1:26 PM, Benjamin Kosnik wrote:
What is your merge/update plan WRT cxx0x-branch and mainline? Do
you have a schedule, or a feeling, or what?
I plan to update cxx0x-branch from mainline occasionally (no set
schedule), just to stay in sync. cxx0x-branch should gather solid C+
+0x-related patches as they are posted to the lists, and we'll merge
individual changes back to mainline when a libstdc++ or C++ FE
maintainer approves them for mainline.
Either way, we should always plan on moving the non-ABI-breaking
features from the cxx0x-branch to mainline. Long before we get
concepts, we'll still want to have library support for rvalue
references, variadic templates, etc. in mainline and under -std=c+
+0x.
Yes. We should still be pretty aggressive about keeping things in
sync I think. We have to take pains to minimize divergence, since
this is potentially a long-lived branch.
Agreed.
I think we want something stronger, actually: I think we should
make every effort to make cxx0x and mainline testsuites match, at
least on a file-per-file basis. (There will be some xfailing, etc.)
Also agreed. This is also important because the C++0x branch tests
the C++0x compiler and library much more heavily than the mainline
compiler, because *everything* is run under C++0x mode by default.
That way the merges only have to deal with the rest of this stuff.
Yep.
So, does this mean that cxx0x-branch should have libstdc++-v4, the C+
+0x libstdc++? We could retain libstdc++-v3 as the C++98/03 standard
library implementation (with some non-ABI-breaking C++0x features, of
course), and make libstdc++-v4 the C++0x library. We'll have to
maintain both libraries for a long time, but I suspect it will be
easier in the long run.
If this is the way to go, and I think it is, then I'm certainly not
the best person to make this change. Someone with a better
understanding of the configure logic, header install process, etc.
should handle the initial setup of libstdc++-v4.
- Doug