gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.

* config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
	(GLIBCXX_3.4.21): Export base object constructor for regex_error.
	* acinclude.m4 (libtool_VERSION): Bump.
	* configure: Regenerate.
	* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
	* testsuite/28_regex/regex_error/base.cc: New.

From-SVN: r210290
This commit is contained in:
Jonathan Wakely 2014-05-09 20:39:14 +01:00 committed by Jonathan Wakely
parent ad31c32a96
commit a8218d79f8
6 changed files with 54 additions and 4 deletions

View File

@ -1,3 +1,12 @@
2014-05-09 Jonathan Wakely <jwakely@redhat.com>
* config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
(GLIBCXX_3.4.21): Export base object constructor for regex_error.
* acinclude.m4 (libtool_VERSION): Bump.
* configure: Regenerate.
* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
* testsuite/28_regex/regex_error/base.cc: New.
2014-05-08 Joshua Gay <jgay@gnu.org>
PR libstdc++/61117

View File

@ -3353,7 +3353,7 @@ changequote([,])dnl
fi
# For libtool versioning info, format is CURRENT:REVISION:AGE
libtool_VERSION=6:20:0
libtool_VERSION=6:21:0
# Everything parsed; figure out what files and settings to use.
case $enable_symvers in

View File

@ -1363,10 +1363,18 @@ GLIBCXX_3.4.20 {
_ZSt24__throw_out_of_range_fmtPKcz;
# std::regex_error::regex_error(std::regex_constants::error_type)
_ZNSt11regex_errorC[01]ENSt15regex_constants10error_typeE;
_ZNSt11regex_errorC1ENSt15regex_constants10error_typeE;
} GLIBCXX_3.4.19;
GLIBCXX_3.4.21 {
# std::regex_error::regex_error(std::regex_constants::error_type)
_ZNSt11regex_errorC2ENSt15regex_constants10error_typeE;
} GLIBCXX_3.4.20;
# Symbols in the support library (libsupc++) have their own tag.
CXXABI_1.3 {

View File

@ -77918,7 +77918,7 @@ $as_echo "$as_me: WARNING: === Symbol versioning will be disabled." >&2;}
fi
# For libtool versioning info, format is CURRENT:REVISION:AGE
libtool_VERSION=6:20:0
libtool_VERSION=6:21:0
# Everything parsed; figure out what files and settings to use.
case $enable_symvers in

View File

@ -0,0 +1,32 @@
// Copyright (C) 2014 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
// terms of the GNU General Public License as published by the
// Free Software Foundation; either version 3, or (at your option)
// any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License along
// with this library; see the file COPYING3. If not see
// <http://www.gnu.org/licenses/>.
// 28.6 [re.badexp]
// { dg-options "-std=c++11" }
#include <regex>
struct re : std::regex_error
{
re() : regex_error(std::regex_constants::error_stack) { }
};
int main()
{
re r __attribute__((unused));
}

View File

@ -200,6 +200,7 @@ check_version(symbol& test, bool added)
known_versions.push_back("GLIBCXX_3.4.18");
known_versions.push_back("GLIBCXX_3.4.19");
known_versions.push_back("GLIBCXX_3.4.20");
known_versions.push_back("GLIBCXX_3.4.21");
known_versions.push_back("CXXABI_1.3");
known_versions.push_back("CXXABI_LDBL_1.3");
known_versions.push_back("CXXABI_1.3.1");
@ -227,7 +228,7 @@ check_version(symbol& test, bool added)
test.version_status = symbol::incompatible;
// Check that added symbols are added in the latest pre-release version.
bool latestp = (test.version_name == "GLIBCXX_3.4.20"
bool latestp = (test.version_name == "GLIBCXX_3.4.21"
|| test.version_name == "CXXABI_1.3.9"
|| test.version_name == "CXXABI_TM_1");
if (added && !latestp)