This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Couple of new issues in mainline
- From: Paolo Carlini <pcarlini at suse dot de>
- To: libstdc++ <libstdc++ at gcc dot gnu dot org>
- Cc: Benjamin Kosnik <bkoz at redhat dot com>
- Date: Fri, 01 Dec 2006 17:43:23 +0100
- Subject: Couple of new issues in mainline
Hi all, hi Benjamin,
in mainline we have a couple of new (unrelated) issues.
The first one is a warning regression, due to a warning recently added
to the C++ front:
In file included from ../../../../trunk/libstdc++-v3/src/mt_allocator.cc:36:
/home/paolo/Gcc/svn-dirs/trunk-build/i686-pc-linux-gnu/libstdc++-v3/include/ext/mt_allocator.h:155:
warning
: type qualifiers ignored on function return type
I think that, for various reasons (the function is not exported + the
type qualifier is indeed ignored), it's safe to simply remove the const
qualifier, as in the below, which I'm finishing testing and mean to
apply later today.
The other one seems more tricky: between 2006-11-28 and 2006-11-29,
check-abi started failing on gnu-linux systems because of this:
2 incompatible symbols
0
_ZNKSt5ctypeIcE5widenEPKcS2_Pc
std::ctype<char>::widen(char const*, char const*, char*) const
version status: incompatible
GLIBCXX_3.4
type: function
status: added
1
_ZNKSt5ctypeIcE5widenEc
std::ctype<char>::widen(char) const
version status: incompatible
GLIBCXX_3.4
type: function
status: added
Essentially, we are now exporting @GLIBCXX_3.4 two additional symbols.
Before starting on the tedious work of splitting out the gnu.ver entry:
GLIBCXX_3.4 {
global:
# Names inside the 'extern' block are demangled names.
extern "C++"
{
...
std::c[i-z]*;
which ultimately makes this kind of problem possible, I'm wondering
whether something went slightly, unexpectedly, wrong with Benjamin's
doxygen changes around the same time, or, more generally, whether we
should tackle the problem in another way... Thanks in advance for any
feedback!
Paolo.
////////////////
2006-12-01 Paolo Carlini <pcarlini@suse.de>
* include/ext/mt_allocator.h (__pool_base::_M_get_align): Remove
redundant const qualifier on the return type.
Index: include/ext/mt_allocator.h
===================================================================
--- include/ext/mt_allocator.h (revision 119401)
+++ include/ext/mt_allocator.h (working copy)
@@ -151,7 +151,7 @@
_M_get_binmap(size_t __bytes)
{ return _M_binmap[__bytes]; }
- const size_t
+ size_t
_M_get_align()
{ return _M_options._M_align; }