mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-13 10:02:38 +00:00
Gcc 3.2.1-prerelease C++ support bits from the FSF anoncvs repo gcc-3_2-branch on October 9th 2002 20:15 EST.
This commit is contained in:
parent
423134a002
commit
2dfb3a5ed0
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/vendor/gcc/dist/; revision=104754
@ -1,3 +1,64 @@
|
||||
2002-10-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* Makefile.am (all-multi): Fix multilib parallel build.
|
||||
|
||||
2002-10-01 Phil Edwards <pme@gcc.gnu.org>
|
||||
|
||||
* Makefile.am (check-abi): Add @ to rule.
|
||||
* Makefile.in: Regenerated.
|
||||
|
||||
2002-10-01 Phil Edwards <pme@gcc.gnu.org>
|
||||
|
||||
PR libstdc++/8096
|
||||
* include/bits/stl_deque.h (deque::_M_range_check): Throw
|
||||
out_of_range, not range_error.
|
||||
|
||||
2002-09-28 Paolo Carlini <pcarlini@unitus.it>
|
||||
|
||||
* include/bits/locale_facets.tcc (num_put::_M_widen_int):
|
||||
Deal correctly with grouped, showbased (oct or hex) zero.
|
||||
* testsuite/22_locale/num_put_members_char.cc: Add test05.
|
||||
* testsuite/22_locale/num_put_members_wchar_t.cc: Ditto.
|
||||
|
||||
2002-09-25 Phil Edwards <pme@gcc.gnu.org>
|
||||
|
||||
Bulk documentation merge (copy) from trunk.
|
||||
* docs/doxygen/run_doxygen, docs/html/Makefile, docs/html/abi.txt,
|
||||
docs/html/configopts.html, docs/html/documentation.html,
|
||||
docs/html/explanations.html, docs/html/install.html,
|
||||
docs/html/makedoc.awk, docs/html/17_intro/C++STYLE,
|
||||
docs/html/17_intro/RELEASE-NOTES, docs/html/17_intro/contribute.html,
|
||||
docs/html/17_intro/howto.html, docs/html/17_intro/license.html,
|
||||
docs/html/18_support/howto.html, docs/html/19_diagnostics/howto.html,
|
||||
docs/html/20_util/howto.html, docs/html/21_strings/howto.html,
|
||||
docs/html/22_locale/codecvt.html, docs/html/22_locale/ctype.html,
|
||||
docs/html/22_locale/howto.html, docs/html/22_locale/locale.html,
|
||||
docs/html/22_locale/messages.html, docs/html/23_containers/howto.html,
|
||||
docs/html/24_iterators/howto.html, docs/html/25_algorithms/howto.html,
|
||||
docs/html/26_numerics/howto.html, docs/html/27_io/howto.html,
|
||||
docs/html/ext/howto.html, docs/html/ext/sgiexts.html,
|
||||
docs/html/faq/index.html, docs/html/faq/index.txt: Merge from trunk.
|
||||
|
||||
2002-09-21 Phil Edwards <pme@gcc.gnu.org>
|
||||
|
||||
* testsuite/abi_check.cc: Pull shell fragments out into...
|
||||
* config/abi/extract_symvers: ...here. New file.
|
||||
* Makefile.am (check_abi): Change to match.
|
||||
(new-abi-baseline): New target.
|
||||
* Makefile.in: Regenerated.
|
||||
|
||||
2002-09-16 Loren J. Rittle <ljrittle@acm.org>
|
||||
|
||||
libstdc++/7922
|
||||
* include/ext/stl_rope.h (rope<>): Qualify dependent names
|
||||
with `typename'.
|
||||
|
||||
2002-09-16 Benjamin Kosnik <bkoz@redhat.com>
|
||||
|
||||
* include/bits/codecvt.h: Remove __s.
|
||||
* config/locale/gnu/codecvt_members.cc: Remove _M_c_locale_codecvt
|
||||
usage, substitute _S_c_locale.
|
||||
|
||||
2002-09-12 Benjamin Kosnik <bkoz@redhat.com>
|
||||
|
||||
* libmath/Makefile.am (LIBTOOL): Use --tag CC always for this
|
||||
|
@ -44,10 +44,25 @@ check-script-install: $(top_builddir)/mkcheck
|
||||
cd testsuite; \
|
||||
@glibcpp_builddir@/mkcheck 1)
|
||||
|
||||
# Use 'new-abi-baseline' to create an initial symbol file. Then run
|
||||
# 'check-abi' to test for changes against that file.
|
||||
baseline_file = @baseline_file@
|
||||
check-abi: $(top_builddir)/testsuite/abi_check
|
||||
-(cd testsuite; \
|
||||
./abi_check ${baseline_file})
|
||||
-@(cd testsuite; \
|
||||
${top_srcdir}/config/abi/extract_symvers \
|
||||
../src/.libs/libstdc++.so \
|
||||
./current_symbols.txt; \
|
||||
./abi_check --check ./current_symbols.txt ${baseline_file})
|
||||
|
||||
new-abi-baseline:
|
||||
-@(output=${baseline_file}; \
|
||||
if test -f $${output}; then \
|
||||
output=$${output}.new; \
|
||||
t=`echo $${output} | sed 's=.*config/abi/=='`; \
|
||||
echo "Baseline file already exists, writing to $${t} instead."; \
|
||||
fi; \
|
||||
${top_srcdir}/config/abi/extract_symvers \
|
||||
src/.libs/libstdc++.so $${output})
|
||||
|
||||
# These rules are messy, but are hella worth it.
|
||||
doxygen:
|
||||
@ -93,7 +108,7 @@ distclean-am: distclean-multi
|
||||
maintainer-clean-am: maintainer-clean-multi
|
||||
|
||||
all-multi:
|
||||
$(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do
|
||||
: $(MAKE) ; exec $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do
|
||||
install-multi:
|
||||
$(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do
|
||||
mostlyclean-multi:
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am
|
||||
# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
|
||||
|
||||
# Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
@ -139,6 +139,8 @@ SUBDIRS = include libio libmath libsupc++ src po testsuite
|
||||
|
||||
mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs
|
||||
|
||||
# Use 'new-abi-baseline' to create an initial symbol file. Then run
|
||||
# 'check-abi' to test for changes against that file.
|
||||
baseline_file = @baseline_file@
|
||||
|
||||
# Multilib support.
|
||||
@ -155,44 +157,7 @@ MULTICLEAN = true
|
||||
# Work around what appears to be a GNU make bug handling MAKEFLAGS
|
||||
# values defined in terms of make variables, as is the case for CC and
|
||||
# friends when we are called from the top level Makefile.
|
||||
AM_MAKEFLAGS = \
|
||||
"AR_FLAGS=$(AR_FLAGS)" \
|
||||
"CC_FOR_BUILD=$(CC_FOR_BUILD)" \
|
||||
"CC_FOR_TARGET=$(CC_FOR_TARGET)" \
|
||||
"CFLAGS=$(CFLAGS)" \
|
||||
"CXXFLAGS=$(CXXFLAGS)" \
|
||||
"CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
|
||||
"CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
|
||||
"INSTALL=$(INSTALL)" \
|
||||
"INSTALL_DATA=$(INSTALL_DATA)" \
|
||||
"INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
|
||||
"INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
|
||||
"LDFLAGS=$(LDFLAGS)" \
|
||||
"LIBCFLAGS=$(LIBCFLAGS)" \
|
||||
"LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
|
||||
"MAKE=$(MAKE)" \
|
||||
"MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
|
||||
"PICFLAG=$(PICFLAG)" \
|
||||
"PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
|
||||
"SHELL=$(SHELL)" \
|
||||
"RUNTESTFLAGS=$(RUNTESTFLAGS)" \
|
||||
"exec_prefix=$(exec_prefix)" \
|
||||
"infodir=$(infodir)" \
|
||||
"libdir=$(libdir)" \
|
||||
"includedir=$(includedir)" \
|
||||
"prefix=$(prefix)" \
|
||||
"tooldir=$(tooldir)" \
|
||||
"AR=$(AR)" \
|
||||
"AS=$(AS)" \
|
||||
"LD=$(LD)" \
|
||||
"LIBCFLAGS=$(LIBCFLAGS)" \
|
||||
"PICFLAG=$(PICFLAG)" \
|
||||
"RANLIB=$(RANLIB)" \
|
||||
"NM=$(NM)" \
|
||||
"NM_FOR_BUILD=$(NM_FOR_BUILD)" \
|
||||
"NM_FOR_TARGET=$(NM_FOR_TARGET)" \
|
||||
"DESTDIR=$(DESTDIR)" \
|
||||
"WERROR=$(WERROR)"
|
||||
AM_MAKEFLAGS = "AR_FLAGS=$(AR_FLAGS)" "CC_FOR_BUILD=$(CC_FOR_BUILD)" "CC_FOR_TARGET=$(CC_FOR_TARGET)" "CFLAGS=$(CFLAGS)" "CXXFLAGS=$(CXXFLAGS)" "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" "INSTALL=$(INSTALL)" "INSTALL_DATA=$(INSTALL_DATA)" "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" "LDFLAGS=$(LDFLAGS)" "LIBCFLAGS=$(LIBCFLAGS)" "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" "MAKE=$(MAKE)" "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" "PICFLAG=$(PICFLAG)" "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" "SHELL=$(SHELL)" "RUNTESTFLAGS=$(RUNTESTFLAGS)" "exec_prefix=$(exec_prefix)" "infodir=$(infodir)" "libdir=$(libdir)" "includedir=$(includedir)" "prefix=$(prefix)" "tooldir=$(tooldir)" "AR=$(AR)" "AS=$(AS)" "LD=$(LD)" "LIBCFLAGS=$(LIBCFLAGS)" "PICFLAG=$(PICFLAG)" "RANLIB=$(RANLIB)" "NM=$(NM)" "NM_FOR_BUILD=$(NM_FOR_BUILD)" "NM_FOR_TARGET=$(NM_FOR_TARGET)" "DESTDIR=$(DESTDIR)" "WERROR=$(WERROR)"
|
||||
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
CONFIG_HEADER = config.h
|
||||
@ -204,7 +169,7 @@ mkcheck.in testsuite_flags.in
|
||||
|
||||
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
|
||||
|
||||
TAR = gtar
|
||||
TAR = tar
|
||||
GZIP_ENV = --best
|
||||
all: all-redirect
|
||||
.SUFFIXES:
|
||||
@ -480,8 +445,21 @@ check-script-install: $(top_builddir)/mkcheck
|
||||
cd testsuite; \
|
||||
@glibcpp_builddir@/mkcheck 1)
|
||||
check-abi: $(top_builddir)/testsuite/abi_check
|
||||
-(cd testsuite; \
|
||||
./abi_check ${baseline_file})
|
||||
-@(cd testsuite; \
|
||||
${top_srcdir}/config/abi/extract_symvers \
|
||||
../src/.libs/libstdc++.so \
|
||||
./current_symbols.txt; \
|
||||
./abi_check --check ./current_symbols.txt ${baseline_file})
|
||||
|
||||
new-abi-baseline:
|
||||
-@(output=${baseline_file}; \
|
||||
if test -f $${output}; then \
|
||||
output=$${output}.new; \
|
||||
t=`echo $${output} | sed 's=.*config/abi/=='`; \
|
||||
echo "Baseline file already exists, writing to $${t} instead."; \
|
||||
fi; \
|
||||
${top_srcdir}/config/abi/extract_symvers \
|
||||
src/.libs/libstdc++.so $${output})
|
||||
|
||||
# These rules are messy, but are hella worth it.
|
||||
doxygen:
|
||||
@ -516,7 +494,7 @@ distclean-am: distclean-multi
|
||||
maintainer-clean-am: maintainer-clean-multi
|
||||
|
||||
all-multi:
|
||||
$(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do
|
||||
: $(MAKE) ; exec $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do
|
||||
install-multi:
|
||||
$(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do
|
||||
mostlyclean-multi:
|
||||
|
64
contrib/libstdc++/config/abi/extract_symvers
Executable file
64
contrib/libstdc++/config/abi/extract_symvers
Executable file
@ -0,0 +1,64 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Copyright (C) 2002 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 2, 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 COPYING. If not, write to the Free
|
||||
# Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
||||
# USA.
|
||||
#
|
||||
# As a special exception, you may use this file as part of a free software
|
||||
# library without restriction. Specifically, if other files instantiate
|
||||
# templates or use macros or inline functions from this file, or you compile
|
||||
# this file and link it with other files to produce an executable, this
|
||||
# file does not by itself cause the resulting executable to be covered by
|
||||
# the GNU General Public License. This exception does not however
|
||||
# invalidate any other reasons why the executable file might be covered by
|
||||
# the GNU General Public License.
|
||||
|
||||
|
||||
if test ${#} -lt 2 || test $1 = '--help'; then
|
||||
echo "Usage: extract_symvers shared_lib output_file" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
lib=$1
|
||||
output=$2
|
||||
|
||||
# GNU binutils, somewhere after version 2.11.2, requires -W/--wide to avoid
|
||||
# default line truncation. -W is not supported and truncation did not occur
|
||||
# by default before that point.
|
||||
readelf="readelf --symbols"
|
||||
if readelf --help | grep -- --wide > /dev/null; then
|
||||
readelf="$readelf --wide"
|
||||
fi
|
||||
|
||||
# This avoids weird sorting problems later.
|
||||
export LC_ALL=C
|
||||
|
||||
tmp=extract.$$
|
||||
|
||||
${readelf} ${lib} | sed '/\.dynsym/,/^$/p;d' | egrep -v ' (LOCAL|UND) ' |\
|
||||
awk '{ if ($4 == "FUNC" || $4 == "NOTYPE")
|
||||
printf "%s:%s\n", $4, $8;
|
||||
else if ($4 == "OBJECT")
|
||||
printf "%s:%s:%s\n", $4, $3, $8;
|
||||
}' | sort | uniq > $tmp 2>&1
|
||||
# else printf "Huh? What is %s?\n", $8;
|
||||
|
||||
|
||||
# I think we'll be doing some more with this file, but for now, dump.
|
||||
mv $tmp $output
|
||||
|
||||
exit 0
|
@ -50,7 +50,7 @@ namespace std
|
||||
result __ret = error;
|
||||
size_t __len = min(__from_end - __from, __to_end - __to);
|
||||
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
|
||||
__c_locale __old = __uselocale(_M_c_locale_codecvt);
|
||||
__c_locale __old = __uselocale(_S_c_locale);
|
||||
#endif
|
||||
size_t __conv = wcsrtombs(__to, &__from, __len, &__state);
|
||||
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
|
||||
@ -85,7 +85,7 @@ namespace std
|
||||
result __ret = error;
|
||||
size_t __len = min(__from_end - __from, __to_end - __to);
|
||||
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
|
||||
__c_locale __old = __uselocale(_M_c_locale_codecvt);
|
||||
__c_locale __old = __uselocale(_S_c_locale);
|
||||
#endif
|
||||
size_t __conv = mbsrtowcs(__to, &__from, __len, &__state);
|
||||
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
|
||||
|
@ -34,7 +34,7 @@
|
||||
#include <bits/os_defines.h>
|
||||
|
||||
// The current version of the C++ library in compressed ISO date format.
|
||||
#define __GLIBCPP__ 20020916
|
||||
#define __GLIBCPP__ 20021009
|
||||
|
||||
// This is necessary until GCC supports separate template
|
||||
// compilation.
|
||||
|
@ -320,7 +320,7 @@
|
||||
{
|
||||
public:
|
||||
explicit
|
||||
codecvt_byname(const char* __s, size_t __refs = 0)
|
||||
codecvt_byname(const char*, size_t __refs = 0)
|
||||
: codecvt<_InternT, _ExternT, _StateT>(__refs) { }
|
||||
|
||||
protected:
|
||||
|
@ -798,8 +798,10 @@ namespace std
|
||||
// By itself __add_grouping cannot deal correctly with __ws when
|
||||
// ios::showbase is set and ios_base::oct || ios_base::hex.
|
||||
// Therefore we take care "by hand" of the initial 0, 0x or 0X.
|
||||
// However, remember that the latter do not occur if the number
|
||||
// printed is '0' (__len == 1).
|
||||
streamsize __off = 0;
|
||||
if (__io.flags() & ios_base::showbase)
|
||||
if ((__io.flags() & ios_base::showbase) && __len > 1)
|
||||
if (__basefield == ios_base::oct)
|
||||
{
|
||||
__off = 1;
|
||||
|
@ -665,7 +665,7 @@ class deque : protected _Deque_base<_Tp, _Alloc>
|
||||
|
||||
void _M_range_check(size_type __n) const {
|
||||
if (__n >= this->size())
|
||||
__throw_range_error("deque");
|
||||
__throw_out_of_range("deque");
|
||||
}
|
||||
|
||||
reference at(size_type __n)
|
||||
|
@ -1375,7 +1375,7 @@ class rope : public _Rope_base<_CharT,_Alloc> {
|
||||
static _RopeLeaf* _S_new_RopeLeaf(__GC_CONST _CharT *__s,
|
||||
size_t __size, allocator_type __a)
|
||||
{
|
||||
_RopeLeaf* __space = _LAllocator(__a).allocate(1);
|
||||
_RopeLeaf* __space = typename _Base::_LAllocator(__a).allocate(1);
|
||||
return new(__space) _RopeLeaf(__s, __size, __a);
|
||||
}
|
||||
|
||||
@ -1383,14 +1383,14 @@ class rope : public _Rope_base<_CharT,_Alloc> {
|
||||
_RopeRep* __left, _RopeRep* __right,
|
||||
allocator_type __a)
|
||||
{
|
||||
_RopeConcatenation* __space = _CAllocator(__a).allocate(1);
|
||||
_RopeConcatenation* __space = typename _Base::_CAllocator(__a).allocate(1);
|
||||
return new(__space) _RopeConcatenation(__left, __right, __a);
|
||||
}
|
||||
|
||||
static _RopeFunction* _S_new_RopeFunction(char_producer<_CharT>* __f,
|
||||
size_t __size, bool __d, allocator_type __a)
|
||||
{
|
||||
_RopeFunction* __space = _FAllocator(__a).allocate(1);
|
||||
_RopeFunction* __space = typename _Base::_FAllocator(__a).allocate(1);
|
||||
return new(__space) _RopeFunction(__f, __size, __d, __a);
|
||||
}
|
||||
|
||||
@ -1398,7 +1398,7 @@ class rope : public _Rope_base<_CharT,_Alloc> {
|
||||
_Rope_RopeRep<_CharT,_Alloc>* __b, size_t __s,
|
||||
size_t __l, allocator_type __a)
|
||||
{
|
||||
_RopeSubstring* __space = _SAllocator(__a).allocate(1);
|
||||
_RopeSubstring* __space = typename _Base::_SAllocator(__a).allocate(1);
|
||||
return new(__space) _RopeSubstring(__b, __s, __l, __a);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user