Commit Graph

212 Commits

Author SHA1 Message Date
Kai Tietz
737be29e4c * config/os/mingw32-w64/os_defines.h (__USE_MINGW_ANSI_STDIO): Define.
From-SVN: r182660
2011-12-23 18:23:38 +01:00
Kai Tietz
2ecb85c86b re PR target/51135 (SIGSEGV during exception cleanup on win32)
PR libstdc++/51135
        * libsupc++/unwind-cxx.h (__cxa_exception): Mark
        exceptionDestructor by _GLIBCXX_CDTOR_CALLABI.
        * libsupc++/eh_throw.cc (__cxa_throw): Mark destructor
        function argument by _GLIBCXX_CDTOR_CALLABI.
        * libsupc++/cxxabi.h (__cxa_throw): Likewise.
        (_GLIBCXX_CDTOR_CALLABI): Add empty default
        definition.
        * config/os/mingw32-w64/os_defines.h (_GLIBCXX_CDTOR_CALLABI): Define
        for IA-32 target as __thiscall.
        * config/os/mingw32/os_defines.h (_GLIBCXX_CDTOR_CALLABI): Likewise.

From-SVN: r182410
2011-12-16 19:43:06 +01:00
Paolo Carlini
60f3dad78d revert: re PR target/51135 (SIGSEGV during exception cleanup on win32)
2011-12-12  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert:
	2011-12-12  Kai Tietz  <ktietz@redhat.com>

	PR libstdc++/51135
	* libsupc++/cxxabi.h (__cxa_dtor_type): New type.
	(__cxa_throw): Use it for destructor-argument.
	* libsupc++/eh_throw.cc (__cxa_throw): Likewise.
	* libsupc++/unwind-cxx.h (__cxa_exception): Change type of member
	exceptionDestructor to __cxa_dtor_type.
	* config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR):
	Define.
	(__cxa_dtor_type): Declare target secific type variant.
	* config/os/mingw32/os_defines.h: Likewise.

From-SVN: r182250
2011-12-12 17:34:19 +00:00
Kai Tietz
f5c48b80ce PR libstdc++/511135
* libsupc++/cxxabi.h (__cxxabi_dtor_type): New type.
	(__cxa_throw): Use it for destructor-argument.
	* libsupc++/eh_throw.cc (__cxa_throw): Likewise.
	* libsupc++/unwind-cxx.h (__cxa_exception): Change type of member
	exceptionDestructor to __cxxabi_dtor_type.
	* config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR):
	Define.
	(__cxa_dtor_type): Declare target secific type variant.
	* config/os/mingw32/os_defines.h: Likewise.

From-SVN: r182237
2011-12-12 14:24:30 +01:00
Jonathan Yong
d7a3ef9794 configure.host: Use config/os/mingw32-w64 instead of config/os/mingw32 if vendor key is "w64".
2011-10-14  Jonathan Yong  <jon_y@users.sourceforge.net>

	* configure.host: Use config/os/mingw32-w64 instead of
	config/os/mingw32 if vendor key is "w64".
	* config/os/mingw32-w64: Duplicate from config/os/mingw32.
	* config/os/mingw32-w64/os_defines.h: Enable
	_GLIBCXX_FULLY_DYNAMIC_STRING if undefined.
	* acinclude.m4: Set fully-dynamic-string to 1 when enabled,
	0 when disabled or undefined if unset by user.
	* include/bits/basic_string.h: Check if
	_GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined.
	include/bits/basic_string.tcc: Likewise.
	* configure: Regenerated.
	* config.h.in: Likewise.

From-SVN: r179961
2011-10-14 08:57:55 +02:00
Paolo Carlini
54e776dc2d error_constants.h: Fix commas.
2011-08-30  Paolo Carlini  <paolo.carlini@oracle.com>

	* config/os/mingw32/error_constants.h: Fix commas.

From-SVN: r178286
2011-08-30 08:57:52 +00:00
Kai Tietz
edf2239b37 configure: Regenerated.
* configure: Regenerated.
	* config.h.in: Regenerated.
	* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR)  Add
	checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
	EWOULDBLOCK.
	*  config/os/mingw32/error_constants.h (errc): Add
	enumerator values no_child_process, no_space_on_device,
	not_supported, operation_not_permitted, operation_would_block,
	timed_out, and value_too_large,

From-SVN: r178257
2011-08-29 21:57:24 +02:00
Rainer Orth
09fae88db5 Handle different versions of Solaris 8 <iso/math_iso.h>, <iso/stdlib_iso.h>
* acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO)
	(GLIBCXX_CHECK_STDLIB_PROTO): New tests.
	* configure.ac (GLIBCXX_CHECK_MATH_PROTO)
	(GLIBCXX_CHECK_STDLIB_PROTO): Call them.
	* configure: Regenerate.
	* config.h.in: Regenerate.
	* config/os/solaris/solaris2.8/os_defines.h
	(__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define.
	* config/os/solaris/solaris2.9: Remove.
	* configure.host (solaris2.8): Merge with ...
	(solaris2.9, solaris2.1[0-9]): ... this.
	Always use os/solaris/solaris2.8.

From-SVN: r178217
2011-08-29 12:54:55 +00:00
Marc Glisse
a1998fab44 Use Solaris prototypes if possible (PR libstdc++-v3/1773)
Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>

From-SVN: r177866
2011-08-18 14:59:47 +00:00
Paolo Carlini
246428c2d4 re PR libstdc++/48382 (ctype_noninline.h should not be installed)
2011-03-31  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/48382
	* src/ctype.cc: Do not include <bits/ctype_noninline.h>.
	* src/Makefile.am: Add ctype_configure_char.cc to host_sources.
	* src/Makefile.in: Regenerate.
	* include/Makefile.am: Remove ctype_noninline.h from host_headers.
	* include/Makefile.in: Regenerate.
	* doc/xml/manual/internals.xml: Update.
	* config/os/newlib/ctype_noninline.h: Fixup and rename to...
	* config/os/newlib/ctype_configure_char.cc: ... this.
	* config/os/aix/ctype_noninline.h: Likewise.
	* config/os/aix/ctype_configure_char.cc: Likewise.
	* config/os/vxworks/ctype_noninline.h: Likewise.
	* config/os/vxworks/ctype_configure_char.cc
	* config/os/hpux/ctype_noninline.h: Likewise.
	* config/os/hpux/ctype_configure_char.cc: Likewise.
	* config/os/gnu-linux/ctype_noninline.h: Likewise.
	* config/os/gnu-linux/ctype_configure_char.cc: Likewise.
	* config/os/mingw32/ctype_noninline.h: Likewise.
	* config/os/mingw32/ctype_configure_char.cc: Likewise.
	* config/os/tpf/ctype_noninline.h: Likewise.
	* config/os/tpf/ctype_configure_char.cc: Likewise.
	* config/os/uclibc/ctype_noninline.h: Likewise.
	* config/os/uclibc/ctype_configure_char.cc: Likewise.
	* config/os/bionic/ctype_noninline.h: Likewise.
	* config/os/bionic/ctype_configure_char.cc: Likewise.
	* config/os/djgpp/ctype_noninline.h: Likewise.
	* config/os/djgpp/ctype_configure_char.cc: Likewise.
	* config/os/qnx/qnx6.1/ctype_noninline.h: Likewise.
	* config/os/qnx/qnx6.1/ctype_configure_char.cc: Likewise.
	* config/os/bsd/netbsd/ctype_noninline.h: Likewise.
	* config/os/bsd/netbsd/ctype_configure_char.cc: Likewise.
	* config/os/bsd/darwin/ctype_noninline.h: Likewise.
	* config/os/bsd/darwin/ctype_configure_char.cc: Likewise.
	* config/os/bsd/freebsd/ctype_noninline.h: Likewise.
	* config/os/bsd/freebsd/ctype_configure_char.cc: Likewise.
	* config/os/irix/irix6.5/ctype_noninline.h: Likewise.
	* config/os/irix/irix6.5/ctype_configure_char.cc: Likewise.
	* config/os/generic/ctype_noninline.h: Likewise.
	* config/os/generic/ctype_configure_char.cc: Likewise.
	* config/os/solaris/solaris2.7/ctype_noninline.h: Likewise.
	* config/os/solaris/solaris2.7/ctype_configure_char.cc: Likewise.

From-SVN: r171790
2011-03-31 16:06:12 +00:00
Benjamin Kosnik
a10b8e2915 PR libstdc++/47560 try two
2011-02-07  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/47560 try two
	* config/os/hpux/os_defines.h: Guard for C++.

From-SVN: r169897
2011-02-07 20:06:03 +00:00
Benjamin Kosnik
04f089357e re PR libstdc++/47560 (FAIL: abi/header_cxxabi.c (test for excess errors))
2011-02-01  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/47560
	* config/os/hpux/os_defines.h: Remove use of macros on namespace.

From-SVN: r169491
2011-02-01 17:11:17 +00:00
Benjamin Kosnik
12ffa22844 PR libstdc++/36104 part four
2011-01-30  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/36104 part four
	* include/bits/c++config (_GLIBCXX_STD): Remove.
	(_GLIBCXX_STD_D, _GLIBCXX_PR): Now _GLIBCXX_STD_C.
	(_GLIBCXX_P): Now _GLIBCXX_STD_A.
	(_GLIBCXX_NAMESPACE_DEBUG, _GLIBCXX_NAMESPACE_PARALLEL,
	 _GLIBCXX_NAMESPACE_PROFILE, _GLIBCXX_NAMESPACE_VERSION): Remove.
	(_GLIBCXX_INLINE_DEBUG, _GLIBCXX_INLINE_PARALLEL,
	 _GLIBCXX_INLINE_PROFILE): Remove.
	(_GLIBCXX_BEGIN_NAMESPACE(X)): Remove.
	(_GLIBCXX_END_NAMESPACE): Remove.
	(_GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)): Remove.
	(_GLIBCXX_END_NESTED_NAMESPACE): Remove.
	(_GLIBCXX_BEGIN_NAMESPACE_ALGO): Add.
	(_GLIBCXX_END_NAMESPACE_ALGO): Add.
	(_GLIBCXX_BEGIN_NAMESPACE_CONTAINER): Add.
	(_GLIBCXX_END_NAMESPACE_CONTAINER): Add.
	(_GLIBCXX_BEGIN_NAMESPACE_VERSION): Add.
	(_GLIBCXX_END_NAMESPACE_VERSION): Add.
	(_GLIBCXX_BEGIN_LDBL_NAMESPACE): To _GLIBCXX_BEGIN_NAMESPACE_LDBL.
	(_GLIBCXX_END_LDBL_NAMESPACE): To _GLIBCXX_END_NAMESPACE_LDBL.
	(_GLIBCXX_VISIBILITY_ATTR): Revert to _GLIBCXX_VISIBILITY.
	* include/*: Use new macros for namespace scope.
	* config/*: Same.
	* src/*: Same.

	* src/Makefile.am (sources): Remove debug_list.cc, add
	compatibility-debug_list-2.cc.
	(parallel_sources): Remove parallel_list.cc, add
	compatibility-parallel_list-2.cc.
	(compatibility-parallel_list-2.[o,lo]): New rule.
	* src/Makefile.in: Regenerate.
	* src/debug_list.cc: Remove.
	* src/parallel_list.cc: Remove.
	* src/compatibility-list-2.cc: New.
	* src/compatibility-debug_list-2.cc: New.
	* src/compatibility-parallel_list-2.cc: New.

	* doc/doxygen/user.cfg.in: Adjust macros.

	* testsuite/20_util/auto_ptr/assign_neg.cc: Adjust line numbers, macros.
	* testsuite/20_util/declval/requirements/1_neg.cc: Same.
	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
	* testsuite/20_util/forward/c_neg.cc: Same.
	* testsuite/20_util/forward/f_neg.cc: Same.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
	* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Same.
	* testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Same.
	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Same.
	* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_1_neg.cc: Same.
	* testsuite/23_containers/deque/requirements/dr438/
	constructor_2_neg.cc: Same.
	* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
	* testsuite/23_containers/forward_list/capacity/1.cc: Same.
	* testsuite/23_containers/forward_list/requirements/dr438/
	assign_neg.cc: Same.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_1_neg.cc: Same.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_2_neg.cc: Same.
	* testsuite/23_containers/forward_list/requirements/dr438/
	insert_neg.cc: Same.
	* testsuite/23_containers/list/capacity/29134.cc: Same.
	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
	* testsuite/23_containers/list/requirements/dr438/
	constructor_1_neg.cc: Same.
	* testsuite/23_containers/list/requirements/dr438/
	constructor_2_neg.cc: Same.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
	* testsuite/23_containers/vector/bool/capacity/29134.cc: Same.
	* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Same.
	* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_1_neg.cc: Same.
	* testsuite/23_containers/vector/requirements/dr438/
	constructor_2_neg.cc: Same.
	* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
	* testsuite/25_algorithms/sort/35588.cc: Same.
	* testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
	* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
	* testsuite/ext/profile/mutex_extensions_neg.cc: Same.
	* testsuite/ext/profile/profiler_algos.cc: Same.
	* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
	* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
	* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
	* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Same.
	* testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.

From-SVN: r169421
2011-01-30 22:39:36 +00:00
Graham Reed
083fcbcbc3 re PR libstdc++/47387 (AIX ctype 'mask' override not working)
2011-01-24  Graham Reed  <greed@pobox.com>

	PR libstdc++/47387
	* config/os/aix/ctype_inline.h (ctype<char>::is): Use _M_table if
	provided.

From-SVN: r169178
2011-01-24 19:53:35 +00:00
Jonathan Wakely
1bd19e1a26 re PR libstdc++/47045 (NetBSD: define changes in ctype.h)
2011-01-13  Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/47045
	* config/os/bsd/netbsd/ctype_base.h: Use new macros based on version.

From-SVN: r168732
2011-01-13 00:02:41 +00:00
Jakub Jelinek
d652f226fc Update Copyright years for files modified in 2010.
From-SVN: r168438
2011-01-03 21:52:22 +01:00
Benjamin Kosnik
f910786b98 *: Use headername alias to associate private includes to public includes.
2010-11-18  Benjamin Kosnik  <bkoz@redhat.com>

	* config/*/*: Use headername alias to associate private includes
	to public includes.
	* include/*/*: Same.

	* scripts/run_doxygen: Update for doxygen 1.7.2.
	* doc/doxygen/user.cfg.in: Same.
	* doc/doxygen/TODO: Remove.

	* testsuite/*/std_c++0x_neg.cc: Adjust line number.

From-SVN: r168046
2010-12-19 09:21:16 +00:00
Kai Tietz
266afdd60e re PR libstdc++/43738 (basic_file_stdio.cc uses ioctl on a fd, but not available on mingw32)
2010-12-02  Kai Tietz  <kai.tietz@onevision.com>

        PR libstdc++/43738
        * config/io/basic_file_stdio.cc (showmanyc): Check _GLIBCXX_NO_IOCTL
        before use of ioctl.
        * config/os/mingw32/os_defines.h (_GLIBCXX_NO_IOCTL): New.

From-SVN: r167369
2010-12-02 14:15:10 +01:00
Suresh Gumpula
a51d1999d8 re PR libstdc++/43918 (gcc 4.5.0 is failing for i586-pc-msdosdjgpp)
2010-06-10  Suresh Gumpula  <suresh.gumpula@amd.com>

	PR libstdc++/43918
	* config/os/djgpp/error_constants.h: New.
	* configure.host: Use it.

From-SVN: r160551
2010-06-10 14:53:15 +00:00
Maxim Kuvyrkov
aa6a73b9da acinclude.m4, [...]: Support Bionic C library.
* acinclude.m4, configure.host: Support Bionic C library.
	* configure: Regenerate.
	* config/os/bionic/ctype_base.h, config/os/bionic/ctype_inline.h,
	* config/os/bionic/ctype_noincline.h, config/os/bionic/os_defines.h:
	New files, based on config/os/newlib/*.

From-SVN: r160096
2010-06-01 09:54:08 +00:00
Rainer Orth
9aaa1ee883 config.gcc: Removed mips-sgi-irix5*, mips-sgi-irix6.[0-4]* from list of obsolete configurations.
gcc:
	* config.gcc: Removed mips-sgi-irix5*, mips-sgi-irix6.[0-4]* from
	list of obsolete configurations.
	Disabled check for obsolete configurations.
	(mips-sgi-irix[56]*): Restrict to mips-sgi-irix6.5*.
	Removed support for previous versions.
	* config/mips/iris.h: Removed.
	* config/mips/iris5.h: Removed.
	* config/mips/iris6.h: Merged old iris.h contents.
	(TARGET_IRIX): Removed.
	(DRIVER_SELF_SPECS): Removed mabi=32.
	(IDENT_ASM_OP): Removed undef.
	(STARTFILE_SPEC): Removed mabi=32.
	(ENDFILE_SPEC): Likewise.
	(IRIX_SUBTARGET_LINK_SPEC): Likewise.
	(MACHINE_TYPE): Update for IRIX 6.5.
	* config/mips/mips.c (mips_build_builtin_va_list): Replaced
	TARGET_IRIX by TARGET_IRIX6.
	(mips_file_start): Likewise.
	(mips_output_external): Remove IRIX 5/6 O32 support.
	(mips_output_function_prologue): Likewise.
	* config/mips/mips.h (TARGET_GPWORD): Replaced TARGET_IRIX by
	TARGET_IRIX6.
	(TARGET_CPU_CPP_BUILTINS): Likewise.
	(TARGET_IRIX): Removed.
	* config/mips/t-iris6 (MULTILIB_OPTIONS): Removed mabi=32.
	(MULTILIB_DIRNAMES): Removed 32.
	(MULTILIB_OSDIRNAMES): Removed ../lib.
	* doc/install.texi (Prerequisites): Don't reference IRIX before
	6.5.
	(Specific, mips-sgi-irix5): Document removal.
	(Specific, mips-sgi-irix6): Document IRIX 6.[0-4] and O32 ABI
	removal.
	Remove references to older IRIX 6 releases and the O32 ABI.

	gcc/ada:
	* gcc-interface/Makefile.in: Removed mips-sgi-irix5* support.

	libstdc++-v3:
	* configure.host: Removed irix[1-6], irix[1-5].*, irix6.[0-4]*
	support.
	* config/os/irix/irix5.2: Removed.

From-SVN: r159121
2010-05-06 18:47:18 +00:00
Dave Korn
2e6623d8fa os_defines.h (_GLIBCXX_PSEUDO_VISIBILITY): Provide empty definition.
* config/os/hpux/os_defines.h (_GLIBCXX_PSEUDO_VISIBILITY): Provide
	empty definition.

From-SVN: r155008
2009-12-05 06:13:44 +00:00
Dave Korn
f7e413e2d4 configure.ac (USE_CYGWIN_LIBSTDCXX_WRAPPERS): Define to reflect status of AC_CHECK_FUNC for Cygwin DLL libstdc++ support wrappers.
gcc/ChangeLog:

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* configure.ac (USE_CYGWIN_LIBSTDCXX_WRAPPERS): Define to reflect
	status of AC_CHECK_FUNC for Cygwin DLL libstdc++ support wrappers.
	* configure: Regenerate.
	* config.in: Regenerate.

	* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Define list of --wrap
	options for Cygwin DLL libstdc++ support wrappers.
	(CXX_WRAP_SPEC_OPT): Define spec to use wrappers or not by default
	according to defined value of USE_CYGWIN_LIBSTDCXX_WRAPPERS.
	(CXX_WRAP_SPEC): Define entire wrapper spec in or out according to
	whether USE_CYGWIN_LIBSTDCXX_WRAPPERS is even defined or not.
	(LINK_SPEC): Include CXX_WRAP_SPEC.
	* gcc/config/i386/winnt.c (wrapper_strcmp): New qsort helper function.
	(i386_find_on_wrapper_list): Check if a function is found on the list
	of libstdc++ wrapper options.
	(i386_pe_file_end): If we are importing a wrapped function, also emit
	an external declaration for the real version.
	* config/i386/cygming.opt (muse-libstdc-wrappers): New option for
	Cygwin targets. Update copyright year.

libstdc++-v3/ChangeLog:

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* libstdc++-v3/acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Don't disable
	on PE targets.
	* libstdc++-v3/configure: Regenerate.
	* libstdc++-v3/configure.host: Add libtool DLL options for Cygwin
	and MinGW platforms.

	* libstdc++-v3/include/bits/c++config (_GLIBCXX_VISIBILITY_ATTR): On
	platforms that don't support visibility, allow them to declare a macro
	_GLIBCXX_PSEUDO_VISIBILITY that is applied in place of visibility.
	(_GLIBCXX_PSEUDO_VISIBILITY): Supply empty default if not declared by
	CPU- or OS-specific headers.

	* libstdc++-v3/config/os/newlib/os_defines.h
	(_GLIBCXX_PSEUDO_VISIBILITY_default): New macro for dllimport.
	(_GLIBCXX_PSEUDO_VISIBILITY_hidden): New empty macro.
	(_GLIBCXX_PSEUDO_VISIBILITY): Evaluate to one of the above.
	* libstdc++-v3/config/os/mingw32/os_defines.h
	(_GLIBCXX_PSEUDO_VISIBILITY_default,
	_GLIBCXX_PSEUDO_VISIBILITY_hidden,
	_GLIBCXX_PSEUDO_VISIBILITY): Likewise.

From-SVN: r154853
2009-11-30 23:22:04 +00:00
Jan Hubicka
09f2a1e440 * include/ext/atomicity.h
(__exchange_and_add, __atomic_add): Mark throw ().
	* config/os/aix/atomicity.h
	* config/os/aix/atomicity.h
	* config/os/irix/atomicity.h
	* config/cpu/cris/atomicity.h
	* config/cpu/m68k/atomicity.h
	* config/cpu/hppa/atomicity.h
	* config/cpu/sparc/atomicity.h
	* config/cpu/i386/atomicity.h
	* config/cpu/i486/atomicity.h
	* config/cpu/sh/atomicity.h
	* config/cpu/generic/atomicity_mutex/atomicity.h
	* config/cpu/generic/atomicity_builtins/atomicity.h
	(__exchange_and_add, __atomic_add): Mark throw ().

From-SVN: r146576
2009-04-22 13:13:55 +00:00
Jakub Jelinek
748086b7b2 Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
From-SVN: r145841
2009-04-09 17:00:19 +02:00
Benjamin Kosnik
2319eb4e23 os_defines.h: Remove superfluous __NO_STRING_INLINES.
2009-02-02  Benjamin Kosnik  <bkoz@redhat.com>

	* config/os/gnu-linux/os_defines.h: Remove superfluous
	__NO_STRING_INLINES.

From-SVN: r143883
2009-02-02 22:07:48 +00:00
Benjamin Kosnik
954a782e53 re PR libstdc++/38834 (FAIL: abi_check on alpha)
2009-01-20  Benjamin Kosnik  <bkoz@redhat.com>
	    Uros Bizjak  <ubizjak@gmail.com>

	PR libstdc++/38834
	* config/abi/pre/gnu.ver: Correct char16_t and char32_t exports.
	* config/os/gnu-linux/ldbl-extra.ver: Tweak.


Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>

From-SVN: r143538
2009-01-21 04:04:24 +00:00
Paolo Carlini
83b83ae97a re PR libstdc++/37522 (Incorrect vswprintf prototype breaks __to_xstring)
2008-10-27  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/37522
	* config/os/mingw32/os_defines.h: Define _GLIBCXX_HAVE_BROKEN_VSWPRINTF
	* include/bits/basic_string.h: Guard string conversions with 
	!defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF) too.
	* testsuite/lib/libstdc++.exp (check_v3_target_string_conversions):
	New.
	* testsuite/lib/dg-options.exp (dg-require-string-conversions): New.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
	Use the latter.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/
	stoull.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
	Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/
	to_string.cc: Likewise.
	* testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
	Likewise.

From-SVN: r141382
2008-10-27 15:01:28 +00:00
Paolo Carlini
918bf5c10e error_constants.h (enum errc): Remove no_posix_equivalent.
2008-10-24  Paolo Carlini  <paolo.carlini@oracle.com>

	* config/os/generic/error_constants.h (enum errc): Remove
	no_posix_equivalent.
	* config/os/mingw32/error_constants.h (enum errc): Likewise.
	* testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc:
	Adjust.

From-SVN: r141341
2008-10-24 10:41:42 +00:00
Chris Fairles
1fa8718bc8 error_constants.h (errc): Use long type.
2008-10-23  Chris Fairles  <cfairles@gcc.gnu.org>

        * config/os/generic/error_constants.h (errc): Use long type.
        * config/os/mingw32/error_constants.h (errc): Likewise.

From-SVN: r141324
2008-10-23 15:16:45 +00:00
Chris Fairles
92010a793b system_error (is_error_code_enum): Specialize for errc.
2008-10-22  Chris Fairles  <cfairles@gcc.gnu.org>

        * include/std/system_error (is_error_code_enum): Specialize for errc.
        (error_category::error_category): Defaulted and protected.
        (error_category::~error_category): New, virtual.
        (error_category::error_category(const error_category&),
        error_category::operator=(const error_category&)): Deleted.
        (get_system_category, get_posix_category): Remove (DR 890).
        (system_category): External linkage (DR 890).
        (posix_category): Remove.
        (generic_category): Add. External linkage (DR 890).
        (error_code::error_code<>(_ErrorCodeEnum)): Use generic_category.
        (error_code::clear, error_code::operator=<>(_ErrorCodeEnum)): Forward to
        error_code::assign, use generic_category.
        (error_condition::error_condition,
        error_condition::error_condition<>(_ErrorConditionEnum)): Use
        generic_category.
        (error_condition::clear,
        error_condition::operator=<>(_ErrorConditionEnum)): Forward to
        error_code::assign, use generic_category.
        (make_error_code, make_error_condition): Define in namespace std.
        * include/std/mutex (unique_lock<>::lock, unique_lock<>::try_lock,
        unique_lock<>::try_lock_until<>(duration),
        unique_lock<>::try_lock_for<>(duration)): Replace posix_error with errc.
        * src/system_error.cc (system_error_category, generic_error_category):
        New.
        (gnu_error_category): Remove.
        (get_system_category, get_posix_category): Remove (DR 890).
        (system_category, generic_category): Define.
        * src/functexcept.cc (__throw_system_error): Use generic_category.
        * config/abi/pre/gnu.ver: Export system_category and generic_category,
        remove get_system_category and get_generic_category (DR 890).
        * config/os/generic/error_constants.h (posix_errno): Rename to errc, use
        enum class type. Fix spelling.
        * config/os/mingw32/error_constants.h (posix_errno): Likewise.
        * testsuite/19_diagnostics/error_code/cons/1.cc: Use errc and
        generic_category.
        * testsuite/19_diagnostics/error_code/operators/bool.cc: Use errc.
        * testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
        * testsuite/19_diagnostics/error_code/operators/not_equal.cc: Likewise.
        * testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Update
        dg-error line numbers.
        * testsuite/19_diagnostics/error_condition/cons/1.cc: Use
        generic_category.
        * testsuite/19_diagnostics/error_condition/operators/bool.cc: Use errc.
        * testsuite/19_diagnostics/error_condition/operators/equal.cc: Likewise.
        * testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
        Likewise.
        * testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc: New.
        * testsuite/19_diagnostics/headers/system_error/types_std_c++0x.cc:
        Remove using tests since errc is not a namespace.
        * testsuite/19_diagnostics/system_error/cons-1.cc: Use errc.
        * testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
        * testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc:
        Likewise.
        * testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
        Likewise.
        * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.

From-SVN: r141297
2008-10-22 15:27:44 +00:00
Mark Mitchell
5194c5c129 arm-eabi-extra.ver: New file.
* config/os/gnu-linux/arm-eabi-extra.ver: New file.
	* configure.host: Use it for arm*-*-linux-*eabi.

From-SVN: r138041
2008-07-21 19:21:45 +00:00
Joseph Myers
cd985f6672 MAINTAINERS (mt port): Remove.
* MAINTAINERS (mt port): Remove.
	(sco5, unixware, sco udk): Remove.
	(Kean Johnston): Add to Write After Approval.

fixincludes:
	* inclhack.def (AAB_svr4_replace_byteorder,
	AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory,
	libc1_G_va_list, libc1_ifdefd_memx, nested_motorola,
	ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime,
	solaris_mutex_init_1, solaris_socket, solaris_unistd,
	solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param,
	ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale,
	ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc,
	ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings,
	ultrix_strings2, ultrix_sys_time, ultrix_unistd,
	unicosmk_restrict, uw7_byteorder_fix, windiss_math1,
	windiss_math2, windiss_valist): Remove.
	* fixincl.x: Regenerate.
	* mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*,
	i370-*-openedition, i?86-*-moss*, i?86-*-uwin*,
	powerpc-*-eabiaix*): Remove.
	* tests/base/math.h: Update.
	* tests/base/pthread.h: Update.
	* tests/base/stdio.h: Update.
	* tests/base/stdlib.h: Update.
	* tests/base/string.h: Update.
	* tests/base/strings.h: Update.
	* tests/base/sys/file.h: Update.
	* tests/base/sys/limits.h: Update.
	* tests/base/sys/socket.h: Update.
	* tests/base/sys/stat.h: Update.
	* tests/base/sys/time.h: Update.
	* tests/base/testing.h: Update.
	* tests/base/unistd.h: Update.
	* tests/base/_G_config.h: Remove.
	* tests/base/arpa: Remove directory.
	* tests/base/fs: Remove directory.
	* tests/base/locale.h: Remove.
	* tests/base/machine: Remove directory.
	* tests/base/rpc/svc.h: Remove.
	* tests/base/sys/ioctl.h: Remove.
	* tests/base/sys/regset.h: Remove.
	* tests/base/sys/times.h: Remove.
	* tests/base/sys/utsname.h: Remove.
	* tests/base/widec.h: Remove.

gcc:
	* config.gcc (Obsolete configurations): Remove list of
	configurations.
	(Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*,
	*-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*.  Remove other
	targets matched by those patterns.
	(strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*,
	m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*,
	alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf,
	arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*,
	hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*,
	i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*,
	i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*,
	i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*,
	i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*,
	mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*,
	powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*,
	powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*,
	strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*,
	vax-*-ultrix*, xscale-*-elf, xscale-*-coff,
	i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove.
	Make code for Solaris 7 and greater unconditional for Solaris.
	(ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*):
	Remove --with-* handling.
	* config/rs6000/sysv4.h (-mwindiss): Remove from all specs.
	(LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC,
	ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC,
	LINK_OS_WINDISS_SPEC): Remove.
	* config/rs6000/sysv4.opt (mwindiss): Remove.
	* configure.ac (strongarm*-*-*, xscale*-*-*): Remove.
	* configure: Regenerate.
	* doc/cpp.texi: Don't mention BeOS.
	* doc/extend.texi (interrupt): Don't mention MS1.
	* doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv,
	m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv,
	alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout,
	i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4,
	powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix):
	Remove.
	* doc/invoke.texi (MT Options): Remove.
	(-mwindiss): Remove.
	(CRIS Options): Remove cris-axis-aout references.
	(HPPA Options): Don't mention hppa1.1-*-pro.
	* doc/md.texi: (MorphoTech family): Remove.
	* libgcc2.c: Don't handle UWIN.
	* config/alpha/t-unicosmk: Remove.
	* config/alpha/unicosmk.h: Remove.
	* config/arm/kaos-arm.h: Remove.
	* config/arm/kaos-strongarm.h: Remove.
	* config/arm/strongarm-coff.h: Remove.
	* config/arm/strongarm-elf.h: Remove.
	* config/arm/strongarm-pe.h: Remove.
	* config/arm/t-strongarm-pe: Remove.
	* config/arm/t-xscale-coff: Remove.
	* config/arm/t-xscale-elf: Remove.
	* config/arm/xscale-coff.h: Remove.
	* config/arm/xscale-elf.h: Remove.
	* config/chorus.h: Remove.
	* config/cris/aout.h: Remove.
	* config/cris/aout.opt: Remove.
	* config/cris/t-aout: Remove.
	* config/i386/beos-elf.h: Remove.
	* config/i386/kaos-i386.h: Remove.
	* config/i386/ptx4-i.h: Remove.
	* config/i386/sco5.h: Remove.
	* config/i386/sco5.opt: Remove.
	* config/i386/sysv4-cpp.h: Remove.
	* config/i386/sysv5.h: Remove.
	* config/i386/t-beos: Remove.
	* config/i386/t-sco5: Remove.
	* config/i386/t-uwin: Remove.
	* config/i386/uwin.asm: Remove.
	* config/i386/uwin.h: Remove.
	* config/kaos.h: Remove.
	* config/mips/windiss.h: Remove.
	* config/mt: Remove directory.
	* config/pa/pa-osf.h: Remove.
	* config/pa/pa-pro-end.h: Remove.
	* config/pa/t-pro: Remove.
	* config/ptx4.h: Remove.
	* config/rs6000/beos.h: Remove.
	* config/rs6000/kaos-ppc.h: Remove.
	* config/rs6000/t-beos: Remove.
	* config/rs6000/windiss.h: Remove.
	* config/sh/kaos-sh.h: Remove.
	* config/sol2-6.h: Remove.
	* config/sparc/sol26-sld.h: Remove.
	* config/sparc/sysv4-only.h: Remove.
	* config/vax/bsd.h: Remove.
	* config/vax/t-memfuncs: Remove.
	* config/vax/ultrix.h: Remove.
	* config/vax/vaxv.h: Remove.
	* config/windiss.h: Remove.

gcc/testsuite:
	* g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*.
	* g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*.
	* g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris
	7.
	* gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*,
	strongarm*-*-* and cris-*-aout*.
	* gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and
	strongarm*-*-*.
	* gcc.dg/20030909-1.c: Don't handle xscale*-*-* and
	strongarm*-*-*.
	* gcc.dg/20031108-1.c: Don't handle xscale*-*-* and
	strongarm*-*-*.
	* gcc.dg/20040813-1.c: Don't handle *-*-sysv5*.
	* gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*.
	* gcc.dg/arm-scd42-1.c: Use target arm*-*-*.
	* gcc.dg/arm-scd42-3.c: Use target arm*-*-*.
	* gcc.dg/cpp/assert4.c: Don't handle BeOS.
	* gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*.
	* gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and
	xscale*-*-elf*.
	* gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*.
	* gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1.
	* gcc.misc-tests/arm-isr.exp: Use target arm*-*-*.
	* gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*.
	* gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*.
	* gcc.target/powerpc/ppc-stackalign-1.c: Don't handle
	powerpc-*-sysv*.
	* gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*.
	* lib/target-supports.exp: Don't handle strongarm*-*-elf,
	xscale*-*-elf and *-*-windiss.
	* obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*.
	* objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*.
	* objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*.
	* gcc.dg/mt-loopi1.c: Remove.

gnattools:
	* configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove.
	* configure: Regenerate.

libcpp:
	* configure.ac (parisc*64*-*-*): Remove.
	* configure: Regenerate.

libffi:
	* configure.ac (parisc*-*-linux*, powerpc-*-sysv*,
	powerpc-*-beos*): Remove.
	* configure: Regenerate.

libgcc:
	* config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*,
	parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*,
	alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf,
	arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*,
	hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*,
	i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*,
	i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*,
	i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*,
	i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*,
	mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*,
	powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*,
	powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*,
	strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*,
	vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove.

libjava:
	* configure.host (strongarm*-elf, xscale*-elf): Remove.

libstdc++-v3:
	* configure.host (xscale, ep9312, m680[246]0, solaris2.5,
	solaris2.5.[0-9], solaris2.6, windiss*): Remove.
	* crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove.
	* configure: Regenerate.
	* config/os/solaris/solaris2.5: Remove directory.
	* config/os/solaris/solaris2.6: Remove directory.
	* config/os/windiss: Remove directory.

From-SVN: r136534
2008-06-07 19:00:15 +01:00
Benjamin Kosnik
cb45715664 os_defines.h: Use _GLIBCXX_BEGIN_NAMESPACE, _GLIBCXX_BEGIN_EXTERN_C, etc.
2008-04-23  Benjamin Kosnik  <bkoz@redhat.com>

	* config/os/hpux/os_defines.h: Use _GLIBCXX_BEGIN_NAMESPACE,
	_GLIBCXX_BEGIN_EXTERN_C, etc.

From-SVN: r134607
2008-04-23 23:28:45 +00:00
Jakub Jelinek
7371aff837 gnu.ver: Remove _ZNKSt3tr14hashIgEclEg@@GLIBCXX_3.4.10 and...
* config/abi/pre/gnu.ver: Remove
	_ZNKSt3tr14hashIgEclEg@@GLIBCXX_3.4.10 and
	_ZNKSt4hashIgEclEg@@GLIBCXX_3.4.10 export.
	* config/os/gnu-linux/ldbl-extra.ver: Export
	_ZNKSt3tr14hashIgEclEg@@GLIBCXX_LDBL_3.4.10
	and _ZNKSt4hashIgEclEg@@GLIBCXX_LDBL_3.4.10.
	* src/hash.cc: Only define long double hash specialization if
	_GLIBCXX_LONG_DOUBLE_COMPAT_IMPL is defined.
	* src/compatibility-ldbl.cc: Include "hash.cc".
	(_GLIBCXX_LONG_DOUBLE_COMPAT_IMPL): Define.
	(_ZNKSt4hashIeEclEe): New alias.
	* testsuite/util/testsuite_abi.cc (check_version): Support
	GLIBCXX_LDBL_3.4.10.

From-SVN: r132804
2008-03-01 20:15:17 +01:00
Jan Beulich
2b854e70a6 acinclude.m4: Also check for EIDRM and ETXTBSY.
2008-02-25  Jan Beulich  <jbeulich@novell.com>

	* acinclude.m4: Also check for EIDRM and ETXTBSY.
	* configure: Re-generate.
	* config/os/generic/error_constants.h (namespace posix_error):
	Also wrap uses of EIDRM and ETXTBSY in conditionals.
	* testsuite/19_diagnostics/headers/system_error/types_std_c++0x.cc:
	Likewise.

From-SVN: r132622
2008-02-25 13:15:16 +00:00
Benjamin Kosnik
4bcf935d11 error_constants.h (posix_errno): Guard not_supported use of ENOTSUP.
2008-02-14  Benjamin Kosnik  <bkoz@redhat.com>

	* config/os/generic/error_constants.h (posix_errno): Guard
	not_supported use of ENOTSUP.
	* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add check for ENOTSUP
	for OpenBSD.
	* aclocal.m4: Regenerate.
	* configure: Rengerate.
	* config.h.in: Same.

From-SVN: r132319
2008-02-14 17:03:02 +00:00
David Edelsohn
62a37275fe re PR target/34794 (build of gcc 4.2.2 fails on AIX 6.1 / libstdc++-v3/libmath/stubs.c:47)
PR target/34794
        * config/os/aix/os_defines.h: Define __COMPATMATH__.

From-SVN: r131866
2008-01-26 11:28:03 -05:00
Gerald Pfeifer
4c963dced4 * config/os/mingw32/error_constants.h: Fix typo in comment.
From-SVN: r131224
2007-12-29 22:33:59 +00:00
Danny Smith
537a336b3f error_constants.h (enum posix_errno): Move inside namespace posix_error
* config/os/mingw32/error_constants.h (enum posix_errno): Move
	inside namespace posix_error

From-SVN: r131218
2007-12-29 05:32:16 +00:00
Paolo Carlini
83588991c1 re PR libstdc++/34538 ([DR 697] combination of sstream, invalid_argument and -std=c++0x breaks valid code)
2007-12-27  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/34538
	* config/os/generic/error_constants.h (enum posix_errno): Move
	inside namespace posix_error.
	* include/std/system_error (error_category::posix,
	error_code::error_code(posix_errno), error_code::posix): Adjust.
	* src/system_error.cc (gnu_error_category::posix): Likewise.
	* testsuite/27_io/basic_ostream/inserters_other/wchar_t/error_code.cc:
	Adjust.
	* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
	Likewise.
	* testsuite/19_diagnostics/error_code/cons/1.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/bool.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/equal.cc: Likewise.
	* testsuite/19_diagnostics/error_code/operators/not_equal.cc:
	Likewise.
	* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Likewise.
	* testsuite/19_diagnostics/error_category/cons/default.cc: Likewise.
	* testsuite/19_diagnostics/error_category/operators/equal.cc:
	Likewise.
	* testsuite/19_diagnostics/error_category/operators/not_equal.cc:
	Likewise.
	* testsuite/19_diagnostics/headers/system_error/types_std_c++0x.cc:
	Likewise.
	* testsuite/19_diagnostics/system_error/cons-1.cc: Likewise.
	* testsuite/19_diagnostics/system_error/what-4.cc: Likewise.
	* testsuite/19_diagnostics/headers/system_error/34538.cc: New.

From-SVN: r131200
2007-12-27 12:59:01 +00:00
Roger Sayle
8885751219 acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EOVERFLOW for Tru64.
* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add EOVERFLOW for Tru64.
	* configure: Regenerate.
	* config/os/generic/error_constants.h: Guard.
	* testsuite/19_diagnostics/headers/system_error/
	types_std_c++0x.cc: Same.

From-SVN: r129245
2007-10-11 23:22:22 +00:00
Roger Sayle
3110357b8f acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ECANCELED for cygwin.
* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ECANCELED for cygwin.
	* configure: Regenerate.
	* config/os/generic/error_constants.h: Guard.
	* testsuite/19_diagnostics/headers/system_error/
	types_std_c++0x.cc: Same.

From-SVN: r128307
2007-09-09 21:47:04 +00:00
Danny Smith
e4bf5dfca1 re PR libstdc++/33203 (libstdc++-v3 build broken on i386-pc-mingw32)
PR libstdc++/33203
	* configure.host (error_constants_dir):  New variable,
	defaulting to os/generic.
	( mingw32*): Overide default.
	* configure.ac (ERROR_CONSTANTS_SRCDIR): New.
	* configure: Regenerate.
	* include/Makefile.am (host_headers): Add
	$(ERROR_CONSTANTS_SRCDIR)/error_constants.h .
	* include/Makefile.in: Regenerate.
	* include/std/system_error (enum posix_errno): Remove.
	Include <bits/error_constants.h> instead.
	* config/os/mingw32/error_constants.h: New.
	* config/os/generic/error_constants.h: New.

From-SVN: r128228
2007-09-07 04:18:40 +00:00
John David Anglin
18efbe5176 re PR libstdc++/31836 (FAIL: 27_io/basic_istream/extractors_arithmetic/char/12.cc execution test)
PR libstdc++/31836
	* config/locale/generic/c_locale.cc (__convert_to_v): Don't use
	strtold if _GLIBCXX_HAVE_BROKEN_STRTOLD is defined.
	* config/os/hpux/os_defines.h (_GLIBCXX_HAVE_BROKEN_STRTOLD): Define
	if __hppa__ is defined.

From-SVN: r126914
2007-07-25 15:32:33 +00:00
Danny Smith
54d82da191 ctype_base.h: Use the generic libstdc++ masks rather than MSVCRT defines.
* config/os/mingw32/ctype_base.h: Use the generic libstdc++ masks
	rather than MSVCRT defines.
	* config/os/mingw32/ctype_noninline.h (classic_table): Construct
	and return a static classic table based on generic libstdc++ masks.

From-SVN: r126674
2007-07-16 09:19:26 +00:00
Paolo Carlini
f697c80d81 c_locale.h (__convert_from_v): Only switch to the "C" locale if the current one isn't already "C" (for old glibcs).
2007-05-24  Paolo Carlini  <pcarlini@suse.de>

	* config/locale/gnu/c_locale.h (__convert_from_v): Only switch to the
	"C" locale if the current one isn't already "C" (for old glibcs).
	* config/os/gnu-linux/ctype_noninline.h (ctype<char>::classic_table,
	ctype<char>::ctype(__c_locale, const mask*, bool, size_t),
	ctype<char>::ctype(const mask*, bool, size_t)): Likewise, for generic
	locale model.
	* config/locale/gnu/messages_members.h
	(messages<>::messages(__c_locale, const char*, size_t),
	messages_byname<_CharT>::messages_byname(const char*, size_t)):
	Only dynamically allocate memory if __s != "C".
	* config/locale/gnu/time_members.h
	(__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)):
	Likewise.
	* config/locale/generic/time_members.h
	(__timepunct<_CharT>::__timepunct(__c_locale, const char*, size_t)):
	Likewise.

	* testsuite/util/testsuite_allocator.h: Revert last change.

From-SVN: r125028
2007-05-24 14:49:45 +00:00
Paolo Carlini
538075fe42 pod_char_traits.h (char_traits<>::move): Use __builtin_memmove.
2007-05-11  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/pod_char_traits.h (char_traits<>::move):
	Use __builtin_memmove.
	* include/bits/locale_classes.h (locale::_Impl::_M_check_same_name,
	collate_byname(const char*, size_t)): Use __builtin_strcmp.
	* include/bits/locale_facets.h: Use __builtin_mem* and
	__builtin_str* everywhere.
	* include/bits/codecvt.h (codecvt_byname(const char*, size_t)):
	Use __builtin_strcmp.
	* include/bits/char_traits.h: Use __builtin_mem* everywhere.
	* include/bits/fstream.tcc (basic_filebuf<>::underflow, imbue):
	Use __builtin_memcpy and __builtin_memmove.
	* include/bits/locale_facets_nonio.h (moneypunct_byname(const char*,
	size_t __refs)): Use __builtin_strcmp.
	* include/std/bitset (bitset<>::_M_do_reset): Use __builtin_memset.
	* config/locale/gnu/c_locale.h: Use __builtin_strlen, __builtin_strcmp,
	and __builtin_memcpy.
	* config/locale/gnu/messages_members.h: Likewise.
	* config/locale/gnu/time_members.h: Likewise.
	* config/locale/generic/c_locale.h: Likewise.
	* config/locale/generic/messages_members.h: Likewise.
	* config/locale/generic/time_members.h: Likewise.
	* config/os/gnu-linux/ctype_noninline.h: Likewise, avoid strdup.
	* config/os/tpf/ctype_noninline.h: Likewise.
	* config/locale/generic/codecvt_members.cc: Include <cstring>. 
	* config/locale/generic/ctype_members.cc: Likewise.
	* config/locale/generic/collate_members.cc: Likewise.
	* config/locale/gnu/c++locale_internal.h: Likewise.
	* config/locale/darwin/ctype_members.cc: Likewise.
	* src/ctype.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
	* testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
	* config/locale/gnu/messages_members.cc: Avoid strdup.
	* config/locale/gnu/monetary_members.cc: Likewise.
	* config/locale/gnu/time_members.cc: Likewise.	
	* config/locale/gnu/time_members.cc: Likewise.
	* config/locale/generic/c_locale.cc: Likewise.

From-SVN: r124623
2007-05-11 18:58:08 +00:00
Danny Smith
21fe02822b * config/os/mingw32/os_defines.h (NOMINMAX): Update comment.
From-SVN: r124519
2007-05-07 21:38:16 +00:00
Benjamin Kosnik
311635d103 c++config: Consistent macro guards for config includes.
2007-02-02  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/c++config: Consistent macro guards for config includes.
	* config/locale/gnu/c_locale.h: Same.
	* config/locale/generic/c_locale.h: Same.
	* config/allocator/mt_allocator_base.h: Same.
	* config/allocator/malloc_allocator_base.h: Same.
	* config/allocator/new_allocator_base.h: Same.
	* config/allocator/pool_allocator_base.h: Same.
	* config/allocator/bitmap_allocator_base.h: Same.
	* config/os/vxworks/os_defines.h: Same.
	* config/cpu/sh/atomicity.h: Same.
	* config/io/c_io_stdio.h: Same.
	* config/io/basic_file_stdio.h: Same.

From-SVN: r121502
2007-02-02 14:49:52 +00:00