aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2009-04-24 23:55:57 +0000
committerJan Hubicka <jh@suse.cz>2009-04-24 23:55:57 +0000
commit8f903caf0dca6d5ec00e03e0793f213ac2cf0e98 (patch)
tree58ee78420192ef68edad77402ef651021ddd6d28 /libstdc++-v3
parent7c51e5506de25de65f9397930400966dadfdc072 (diff)
* Merge from mainline.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/pretty-ipa@146749 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog62
-rw-r--r--libstdc++-v3/config/cpu/cris/atomicity.h4
-rw-r--r--libstdc++-v3/config/cpu/generic/atomicity_builtins/atomicity.h4
-rw-r--r--libstdc++-v3/config/cpu/generic/atomicity_mutex/atomicity.h4
-rw-r--r--libstdc++-v3/config/cpu/hppa/atomicity.h4
-rw-r--r--libstdc++-v3/config/cpu/i386/atomicity.h4
-rw-r--r--libstdc++-v3/config/cpu/i486/atomicity.h4
-rw-r--r--libstdc++-v3/config/cpu/m68k/atomicity.h8
-rw-r--r--libstdc++-v3/config/cpu/sh/atomicity.h8
-rw-r--r--libstdc++-v3/config/cpu/sparc/atomicity.h8
-rw-r--r--libstdc++-v3/config/os/aix/atomicity.h4
-rw-r--r--libstdc++-v3/config/os/irix/atomicity.h4
-rw-r--r--libstdc++-v3/doc/xml/authors.xml10
-rw-r--r--libstdc++-v3/doc/xml/faq.xml8
-rw-r--r--libstdc++-v3/doc/xml/manual/abi.xml9
-rw-r--r--libstdc++-v3/doc/xml/manual/appendix_contributing.xml2
-rw-r--r--libstdc++-v3/doc/xml/manual/intro.xml2
-rw-r--r--libstdc++-v3/doc/xml/manual/status_cxx1998.xml6
-rw-r--r--libstdc++-v3/doc/xml/manual/status_cxx200x.xml2
-rw-r--r--libstdc++-v3/doc/xml/manual/status_cxxtr1.xml2
-rw-r--r--libstdc++-v3/include/bits/basic_string.tcc3
-rw-r--r--libstdc++-v3/include/bits/random.h12
-rw-r--r--libstdc++-v3/include/bits/random.tcc30
-rw-r--r--libstdc++-v3/include/c_global/cstdio8
-rw-r--r--libstdc++-v3/include/c_global/cstdlib14
-rw-r--r--libstdc++-v3/include/c_global/cwchar6
-rw-r--r--libstdc++-v3/include/c_std/cstdio8
-rw-r--r--libstdc++-v3/include/c_std/cstdlib14
-rw-r--r--libstdc++-v3/include/c_std/cwchar6
-rw-r--r--libstdc++-v3/include/ext/atomicity.h4
-rw-r--r--libstdc++-v3/include/ext/bitmap_allocator.h2
-rw-r--r--libstdc++-v3/include/ext/malloc_allocator.h2
-rw-r--r--libstdc++-v3/include/ext/mt_allocator.h2
-rw-r--r--libstdc++-v3/include/ext/new_allocator.h2
-rw-r--r--libstdc++-v3/include/ext/pool_allocator.h4
-rw-r--r--libstdc++-v3/include/ext/rc_string_base.h2
-rw-r--r--libstdc++-v3/include/ext/sso_string_base.h2
-rw-r--r--libstdc++-v3/include/ext/throw_allocator.h2
-rw-r--r--libstdc++-v3/include/tr1_impl/array4
39 files changed, 181 insertions, 105 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index b72a0a3f80e..74797ada3f8 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,62 @@
+2009-04-24 Benjamin Kosnik <bkoz@redhat.com>
+
+ * xml/authors.xml: Add space.
+ * xml/faq.xml: Update links.
+ * xml/manual/intro.xml: Same.
+ * xml/manual/abi.xml: Update.
+ * xml/manual/appendix_contributing.xml: Fix typo.
+ * xml/manual/status_cxxtr1.xml: Update links.
+ * xml/manual/status_cxx1998.xml: Same.
+ * xml/manual/status_cxx200x.xml: Same.
+
+2009-04-22 Jan Hubicka <jh@suse.cz>
+
+ * include/tr1_impl/array (at): Do not use builtin_expect.
+ * include/ext/throw_allocator.h (allocate): Likewise.
+ * include/ext/pool_allocator.h (allocate): Likweise.
+ * include/ext/bitmap_allocator.h (allocate): Likewise.
+ * include/ext/rc_string_base.h (_S_construct): Likewise.
+ * include/ext/malloc_allocator.h (allocate): Likewise.
+ * include/ext/mt_allocator.h (allocate): Likewise.
+ * include/ext/sso_string_base.h (_M_construct): Likewise.
+ * include/bits/basic_string.tcc (_S_construct): Likewise.
+
+2009-04-22 Jan Hubicka <jh@suse.cz>
+
+ * include/c_std/cstdlib (abort, exit, _Exit): Mark noreturn throw ().
+ (atexit, atoll, stroll, strtoull): Mark throw ()
+ * include/c_std/cstdio (snprintf, vsnprintf, vscanf): Mark throw ().
+ * include/c_std/cwchar (wcstold, wcstoll, wcstoull): Mark throw ().
+ * include/c_global/cstdlib (abort, exit, _Exit): Mark noreturn throw ().
+ (atexit, atoll, stroll, strtoull): Mark throw ()
+ * include/c_global/cstdio (snprintf, vsnprintf, vscanf): Mark throw ().
+ * include/c_wchar/cstdio (snprintf, vsnprintf, vscanf): Mark throw ().
+
+2009-04-21 Jan Hubicka <jh@suse.cz>
+
+ * 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 ().
+
+2009-04-21 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR libstdc++/39835
+ * include/bits/random.h: Avoid the badname __alpha (and, for
+ consistency, __beta too).
+ * include/bits/random.tcc: Likewise.
+
2009-04-19 Jan Hubicka <jh@suse.cz>
* include/c_compatibility/stdatomic.h (__atomic_flag_for_address): Use
@@ -6831,9 +6890,6 @@
* include/Makefile.in: Regenerate.
* include/precompiled/stdc++.h: Add.
- * doc/xml/api.xml: Add gcc-4.4 link.
- * doc/html/api.html: Regenerate.
-
2009-04-06 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/random.h: Adjust doxygen markup.
diff --git a/libstdc++-v3/config/cpu/cris/atomicity.h b/libstdc++-v3/config/cpu/cris/atomicity.h
index 37be3a84719..92254273e1e 100644
--- a/libstdc++-v3/config/cpu/cris/atomicity.h
+++ b/libstdc++-v3/config/cpu/cris/atomicity.h
@@ -27,7 +27,7 @@
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
int __tmp;
_Atomic_word __result;
@@ -80,7 +80,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
}
void
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{ __exchange_and_add(__mem, __val); }
_GLIBCXX_END_NAMESPACE
diff --git a/libstdc++-v3/config/cpu/generic/atomicity_builtins/atomicity.h b/libstdc++-v3/config/cpu/generic/atomicity_builtins/atomicity.h
index 9b3b997db3c..ae69ecc7dd7 100644
--- a/libstdc++-v3/config/cpu/generic/atomicity_builtins/atomicity.h
+++ b/libstdc++-v3/config/cpu/generic/atomicity_builtins/atomicity.h
@@ -34,12 +34,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{ return __sync_fetch_and_add(__mem, __val); }
void
__attribute__ ((__unused__))
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{ __sync_fetch_and_add(__mem, __val); }
_GLIBCXX_END_NAMESPACE
diff --git a/libstdc++-v3/config/cpu/generic/atomicity_mutex/atomicity.h b/libstdc++-v3/config/cpu/generic/atomicity_mutex/atomicity.h
index d8a5245c631..fe3ade84d34 100644
--- a/libstdc++-v3/config/cpu/generic/atomicity_mutex/atomicity.h
+++ b/libstdc++-v3/config/cpu/generic/atomicity_mutex/atomicity.h
@@ -44,7 +44,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
__gnu_cxx::__scoped_lock sentry(get_atomic_mutex());
_Atomic_word __result;
@@ -55,7 +55,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
void
__attribute__ ((__unused__))
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{ __exchange_and_add(__mem, __val); }
_GLIBCXX_END_NAMESPACE
diff --git a/libstdc++-v3/config/cpu/hppa/atomicity.h b/libstdc++-v3/config/cpu/hppa/atomicity.h
index 6a167e955fe..cf1ceb05ac8 100644
--- a/libstdc++-v3/config/cpu/hppa/atomicity.h
+++ b/libstdc++-v3/config/cpu/hppa/atomicity.h
@@ -43,7 +43,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
int
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
_Atomic_word result;
int tmp;
@@ -68,7 +68,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
void
__attribute__ ((__unused__))
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{
int tmp;
volatile int& lock = _Atomicity_lock<0>::_S_atomicity_lock;
diff --git a/libstdc++-v3/config/cpu/i386/atomicity.h b/libstdc++-v3/config/cpu/i386/atomicity.h
index de2b329e878..8f7619307fe 100644
--- a/libstdc++-v3/config/cpu/i386/atomicity.h
+++ b/libstdc++-v3/config/cpu/i386/atomicity.h
@@ -39,7 +39,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
register _Atomic_word __result, __tmp = 1;
@@ -64,7 +64,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
void
__attribute__ ((__unused__))
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{ __exchange_and_add(__mem, __val); }
_GLIBCXX_END_NAMESPACE
diff --git a/libstdc++-v3/config/cpu/i486/atomicity.h b/libstdc++-v3/config/cpu/i486/atomicity.h
index 42f9a8fecff..d9e68f4d8ca 100644
--- a/libstdc++-v3/config/cpu/i486/atomicity.h
+++ b/libstdc++-v3/config/cpu/i486/atomicity.h
@@ -28,7 +28,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
register _Atomic_word __result;
__asm__ __volatile__ ("lock; xadd{l} {%0,%1|%1,%0}"
@@ -39,7 +39,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
void
__attribute__ ((__unused__))
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{
__asm__ __volatile__ ("lock; add{l} {%1,%0|%0,%1}"
: "=m" (*__mem) : "ir" (__val), "m" (*__mem));
diff --git a/libstdc++-v3/config/cpu/m68k/atomicity.h b/libstdc++-v3/config/cpu/m68k/atomicity.h
index e6cdbeebc27..5b3692eecef 100644
--- a/libstdc++-v3/config/cpu/m68k/atomicity.h
+++ b/libstdc++-v3/config/cpu/m68k/atomicity.h
@@ -32,7 +32,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// These variants support compare-and-swap.
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
register _Atomic_word __result = *__mem;
register _Atomic_word __temp;
@@ -50,7 +50,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// Disable interrupts, which we can do only from supervisor mode.
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
_Atomic_word __result;
short __level, __tmpsr;
@@ -79,7 +79,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
_Atomic_word __result;
@@ -119,7 +119,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
void
__attribute__ ((__unused__))
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{
// Careful: using add.l with a memory destination is not
// architecturally guaranteed to be atomic.
diff --git a/libstdc++-v3/config/cpu/sh/atomicity.h b/libstdc++-v3/config/cpu/sh/atomicity.h
index acd5e87d8af..251d49ff2b9 100644
--- a/libstdc++-v3/config/cpu/sh/atomicity.h
+++ b/libstdc++-v3/config/cpu/sh/atomicity.h
@@ -33,7 +33,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add (volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add (volatile _Atomic_word* __mem, int __val) throw ()
{
_Atomic_word __result;
@@ -54,7 +54,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
void
__attribute__ ((__unused__))
- __atomic_add (volatile _Atomic_word* __mem, int __val)
+ __atomic_add (volatile _Atomic_word* __mem, int __val) throw ()
{
asm("0:\n"
"\tmovli.l\t@%1,r0\n"
@@ -84,7 +84,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
__gnu_cxx::__scoped_lock sentry(atomic_mutex);
_Atomic_word __result;
@@ -95,7 +95,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
void
__attribute__ ((__unused__))
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{ __exchange_and_add(__mem, __val); }
_GLIBCXX_END_NAMESPACE
diff --git a/libstdc++-v3/config/cpu/sparc/atomicity.h b/libstdc++-v3/config/cpu/sparc/atomicity.h
index be3b07f3f7c..1ead48d2788 100644
--- a/libstdc++-v3/config/cpu/sparc/atomicity.h
+++ b/libstdc++-v3/config/cpu/sparc/atomicity.h
@@ -30,7 +30,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#ifdef __arch64__
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
_Atomic_word __tmp1, __tmp2;
_Atomic_word __val_extended = __val;
@@ -48,7 +48,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
void
__attribute__ ((__unused__))
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{
_Atomic_word __tmp1, __tmp2;
_Atomic_word __val_extended = __val;
@@ -78,7 +78,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{
_Atomic_word __result, __tmp;
@@ -100,7 +100,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
void
__attribute__ ((__unused__))
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{
_Atomic_word __tmp;
diff --git a/libstdc++-v3/config/os/aix/atomicity.h b/libstdc++-v3/config/os/aix/atomicity.h
index 03718e20b18..38622b12815 100644
--- a/libstdc++-v3/config/os/aix/atomicity.h
+++ b/libstdc++-v3/config/os/aix/atomicity.h
@@ -42,12 +42,12 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add (volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add (volatile _Atomic_word* __mem, int __val) throw ()
{ return ::fetch_and_add(const_cast<atomic_p>(__mem), __val); }
void
__attribute__ ((__unused__))
- __atomic_add (volatile _Atomic_word* __mem, int __val)
+ __atomic_add (volatile _Atomic_word* __mem, int __val) throw ()
{ (void) ::fetch_and_add(const_cast<atomic_p>(__mem), __val); }
_GLIBCXX_END_NAMESPACE
diff --git a/libstdc++-v3/config/os/irix/atomicity.h b/libstdc++-v3/config/os/irix/atomicity.h
index 4771ef4a57f..9048fb2be67 100644
--- a/libstdc++-v3/config/os/irix/atomicity.h
+++ b/libstdc++-v3/config/os/irix/atomicity.h
@@ -28,11 +28,11 @@
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
_Atomic_word
- __exchange_and_add(volatile _Atomic_word* __mem, int __val)
+ __exchange_and_add(volatile _Atomic_word* __mem, int __val) throw ()
{ return (_Atomic_word) test_then_add((unsigned long*) const_cast<_Atomic_word*>(__mem), __val); }
void
- __atomic_add(volatile _Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val) throw ()
{ __exchange_and_add(__mem, __val); }
_GLIBCXX_END_NAMESPACE
diff --git a/libstdc++-v3/doc/xml/authors.xml b/libstdc++-v3/doc/xml/authors.xml
index 83795ba076b..43d8d864130 100644
--- a/libstdc++-v3/doc/xml/authors.xml
+++ b/libstdc++-v3/doc/xml/authors.xml
@@ -21,6 +21,16 @@
-->
<author>
+ <firstname></firstname>
+ <surname></surname>
+
+ <authorblurb>
+ <para>
+ </para>
+ </authorblurb>
+ </author>
+
+ <author>
<firstname>Paolo</firstname>
<surname>Carlini</surname>
diff --git a/libstdc++-v3/doc/xml/faq.xml b/libstdc++-v3/doc/xml/faq.xml
index 6366e05349d..c8907cabed8 100644
--- a/libstdc++-v3/doc/xml/faq.xml
+++ b/libstdc++-v3/doc/xml/faq.xml
@@ -692,9 +692,9 @@
</para>
<para>
Long answer: See the implementation status pages for
- <link linkend="manual.intro.status.standard.1998">C++98</link>,
- <link linkend="manual.intro.status.standard.tr1">TR1</link>, and
- <link linkend="manual.intro.status.standard.200x">C++0x</link>.
+ <link linkend="status.iso.1998">C++98</link>,
+ <link linkend="status.iso.tr1">TR1</link>, and
+ <link linkend="status.iso.200x">C++0x</link>.
</para>
</answer>
</qandaentry>
@@ -1123,7 +1123,7 @@
</para>
<para>
The implementation status of TR1 in libstdc++ can be tracked <link
- linkend="manual.intro.status.standard.tr1">on the TR1 status
+ linkend="status.iso.tr1">on the TR1 status
page</link>.
</para>
</answer>
diff --git a/libstdc++-v3/doc/xml/manual/abi.xml b/libstdc++-v3/doc/xml/manual/abi.xml
index 9bc4ce859a1..d051d3a4895 100644
--- a/libstdc++-v3/doc/xml/manual/abi.xml
+++ b/libstdc++-v3/doc/xml/manual/abi.xml
@@ -207,6 +207,7 @@ compatible.
<listitem><para>gcc-4.1.0: GCC_4.1.0</para></listitem>
<listitem><para>gcc-4.2.0: GCC_4.2.0</para></listitem>
<listitem><para>gcc-4.3.0: GCC_4.3.0</para></listitem>
+ <listitem><para>gcc-4.4.0: GCC_4.4.0</para></listitem>
</itemizedlist>
</listitem>
@@ -264,6 +265,8 @@ compatible.
<listitem><para>gcc-4.3.0: libstdc++.so.6.0.10</para></listitem>
<listitem><para>gcc-4.3.1: libstdc++.so.6.0.10</para></listitem>
<listitem><para>gcc-4.3.2: libstdc++.so.6.0.10</para></listitem>
+ <listitem><para>gcc-4.3.3: libstdc++.so.6.0.10</para></listitem>
+ <listitem><para>gcc-4.4.0: libstdc++.so.6.0.11</para></listitem>
</itemizedlist>
<para>
Note 1: Error should be libstdc++.so.3.0.3.
@@ -320,6 +323,7 @@ compatible.
<listitem><para>gcc-4.1.1: GLIBCXX_3.4.8</para></listitem>
<listitem><para>gcc-4.2.0: GLIBCXX_3.4.9</para></listitem>
<listitem><para>gcc-4.3.0: GLIBCXX_3.4.10, CXXABI_1.3.2</para></listitem>
+ <listitem><para>gcc-4.4.0: GLIBCXX_3.4.11, CXXABI_1.3.3</para></listitem>
</itemizedlist>
</listitem>
@@ -426,6 +430,8 @@ compatible.
<listitem><para>gcc-4.3.0: 20080306</para></listitem>
<listitem><para>gcc-4.3.1: 20080606</para></listitem>
<listitem><para>gcc-4.3.2: 20080827</para></listitem>
+ <listitem><para>gcc-4.3.3: 20090124</para></listitem>
+ <listitem><para>gcc-4.4.0: 20090421</para></listitem>
</itemizedlist>
<para></para>
</listitem>
@@ -524,7 +530,8 @@ compatible.
<listitem><para>gcc-4.2.4: include/c++/4.2.4</para></listitem>
<listitem><para>gcc-4.3.0: include/c++/4.3.0</para></listitem>
<listitem><para>gcc-4.3.1: include/c++/4.3.1</para></listitem>
- <listitem><para>gcc-4.3.2: include/c++/4.3.2</para></listitem>
+ <listitem><para>gcc-4.3.3: include/c++/4.3.3</para></listitem>
+ <listitem><para>gcc-4.4.0: include/c++/4.4.0</para></listitem>
</itemizedlist>
<para></para>
</listitem>
diff --git a/libstdc++-v3/doc/xml/manual/appendix_contributing.xml b/libstdc++-v3/doc/xml/manual/appendix_contributing.xml
index f61b4534f97..1688fa823a1 100644
--- a/libstdc++-v3/doc/xml/manual/appendix_contributing.xml
+++ b/libstdc++-v3/doc/xml/manual/appendix_contributing.xml
@@ -1102,7 +1102,7 @@ indicate a place that may require attention for multi-thread safety.
For validating the XML document, you'll need
something like <command>xmllint</command> and access to the
DocBook DTD. These are provided
- by a vendor package like <filename>lixml2</filename>.
+ by a vendor package like <filename>libxml2</filename>.
</para>
<para>
diff --git a/libstdc++-v3/doc/xml/manual/intro.xml b/libstdc++-v3/doc/xml/manual/intro.xml
index 7a5e7ce97b2..dca08c2b9e1 100644
--- a/libstdc++-v3/doc/xml/manual/intro.xml
+++ b/libstdc++-v3/doc/xml/manual/intro.xml
@@ -27,7 +27,7 @@
<title>Status</title>
<!-- Section 01 : Implementation Status -->
- <sect1 id="manual.intro.status.standard" xreflabel="Status">
+ <sect1 id="manual.intro.status.iso" xreflabel="Status">
<title>Implementation Status</title>
<!-- Section 01.1 : Status C++ 1998 -->
diff --git a/libstdc++-v3/doc/xml/manual/status_cxx1998.xml b/libstdc++-v3/doc/xml/manual/status_cxx1998.xml
index dde3cc06c6e..d163f8a699f 100644
--- a/libstdc++-v3/doc/xml/manual/status_cxx1998.xml
+++ b/libstdc++-v3/doc/xml/manual/status_cxx1998.xml
@@ -1,4 +1,4 @@
-<sect2 id="manual.intro.status.standard.1998" xreflabel="ISO C++ 1998">
+<sect2 id="status.iso.1998" xreflabel="ISO C++ 1998">
<?dbhtml filename="status_iso_cxx1998.html"?>
<sect2info>
@@ -14,7 +14,7 @@
<title>C++ 1998/2003</title>
-<sect3 id="standard.1998.status" xreflabel="Implementation Status">
+<sect3 id="iso.1998.status" xreflabel="Implementation Status">
<title>Implementation Status</title>
<para>
@@ -1032,7 +1032,7 @@ particular release.
</table>
</sect3>
-<sect3 id="standard.1998.specific" xreflabel="Implementation Specific">
+<sect3 id="iso.1998.specific" xreflabel="Implementation Specific">
<title>Implementation Specific Behavior</title>
<para>
diff --git a/libstdc++-v3/doc/xml/manual/status_cxx200x.xml b/libstdc++-v3/doc/xml/manual/status_cxx200x.xml
index 2ff0e627a3d..159bc9fec39 100644
--- a/libstdc++-v3/doc/xml/manual/status_cxx200x.xml
+++ b/libstdc++-v3/doc/xml/manual/status_cxx200x.xml
@@ -1,4 +1,4 @@
-<sect2 id="manual.intro.status.standard.200x" xreflabel="Status C++ 200x">
+<sect2 id="status.iso.200x" xreflabel="Status C++ 200x">
<?dbhtml filename="status_iso_cxx200x.html"?>
<sect2info>
diff --git a/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml b/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml
index 33172e3ac02..10ca06d1372 100644
--- a/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml
+++ b/libstdc++-v3/doc/xml/manual/status_cxxtr1.xml
@@ -1,4 +1,4 @@
-<sect2 id="manual.intro.status.standard.tr1" xreflabel="Status C++ TR1">
+<sect2 id="status.iso.tr1" xreflabel="Status C++ TR1">
<?dbhtml filename="status_iso_cxxtr1.html"?>
<sect2info>
diff --git a/libstdc++-v3/include/bits/basic_string.tcc b/libstdc++-v3/include/bits/basic_string.tcc
index a5553c61a1b..ec771c66859 100644
--- a/libstdc++-v3/include/bits/basic_string.tcc
+++ b/libstdc++-v3/include/bits/basic_string.tcc
@@ -129,8 +129,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
return _S_empty_rep()._M_refdata();
#endif
// NB: Not required, but considered best practice.
- if (__builtin_expect(__gnu_cxx::__is_null_pointer(__beg)
- && __beg != __end, 0))
+ if (__gnu_cxx::__is_null_pointer(__beg) && __beg != __end)
__throw_logic_error(__N("basic_string::_S_construct NULL not valid"));
const size_type __dnew = static_cast<size_type>(std::distance(__beg,
diff --git a/libstdc++-v3/include/bits/random.h b/libstdc++-v3/include/bits/random.h
index 366105caa8f..425420607ce 100644
--- a/libstdc++-v3/include/bits/random.h
+++ b/libstdc++-v3/include/bits/random.h
@@ -3627,9 +3627,9 @@ namespace std
friend class gamma_distribution<_RealType>;
explicit
- param_type(_RealType __alpha = _RealType(1),
- _RealType __beta = _RealType(1))
- : _M_alpha(__alpha), _M_beta(__beta)
+ param_type(_RealType __alpha_val = _RealType(1),
+ _RealType __beta_val = _RealType(1))
+ : _M_alpha(__alpha_val), _M_beta(__beta_val)
{
_GLIBCXX_DEBUG_ASSERT(_M_alpha > _RealType(0));
_M_initialize();
@@ -3660,9 +3660,9 @@ namespace std
* @f$ \alpha @f$ and @f$ \beta @f$.
*/
explicit
- gamma_distribution(_RealType __alpha = _RealType(1),
- _RealType __beta = _RealType(1))
- : _M_param(__alpha, __beta)
+ gamma_distribution(_RealType __alpha_val = _RealType(1),
+ _RealType __beta_val = _RealType(1))
+ : _M_param(__alpha_val, __beta_val)
{ }
explicit
diff --git a/libstdc++-v3/include/bits/random.tcc b/libstdc++-v3/include/bits/random.tcc
index 9fed72ff881..8944c116b7e 100644
--- a/libstdc++-v3/include/bits/random.tcc
+++ b/libstdc++-v3/include/bits/random.tcc
@@ -1921,14 +1921,14 @@ namespace std
__aurng(__urng);
bool __reject;
- const _RealType __alpha = __param.alpha();
- const _RealType __beta = __param.beta();
- if (__alpha >= 1)
+ const _RealType __alpha_val = __param.alpha();
+ const _RealType __beta_val = __param.beta();
+ if (__alpha_val >= 1)
{
// alpha - log(4)
- const result_type __b = __alpha
+ const result_type __b = __alpha_val
- result_type(1.3862943611198906188344642429163531L);
- const result_type __c = __alpha + __param._M_l_d;
+ const result_type __c = __alpha_val + __param._M_l_d;
const result_type __1l = 1 / __param._M_l_d;
// 1 + log(9 / 2)
@@ -1936,11 +1936,11 @@ namespace std
do
{
- const result_type __u = __aurng() / __beta;
- const result_type __v = __aurng() / __beta;
+ const result_type __u = __aurng() / __beta_val;
+ const result_type __v = __aurng() / __beta_val;
const result_type __y = __1l * std::log(__v / (1 - __v));
- __x = __alpha * std::exp(__y);
+ __x = __alpha_val * std::exp(__y);
const result_type __z = __u * __v * __v;
const result_type __r = __b + __c * __y - __x;
@@ -1953,12 +1953,12 @@ namespace std
}
else
{
- const result_type __c = 1 / __alpha;
+ const result_type __c = 1 / __alpha_val;
do
{
- const result_type __z = -std::log(__aurng() / __beta);
- const result_type __e = -std::log(__aurng() / __beta);
+ const result_type __z = -std::log(__aurng() / __beta_val);
+ const result_type __e = -std::log(__aurng() / __beta_val);
__x = std::pow(__z, __c);
@@ -1967,7 +1967,7 @@ namespace std
while (__reject);
}
- return __beta * __x;
+ return __beta_val * __x;
}
template<typename _RealType, typename _CharT, typename _Traits>
@@ -2005,10 +2005,10 @@ namespace std
const typename __ios_base::fmtflags __flags = __is.flags();
__is.flags(__ios_base::dec | __ios_base::skipws);
- _RealType __alpha, __beta;
- __is >> __alpha >> __beta;
+ _RealType __alpha_val, __beta_val;
+ __is >> __alpha_val >> __beta_val;
__x.param(typename gamma_distribution<_RealType>::
- param_type(__alpha, __beta));
+ param_type(__alpha_val, __beta_val));
__is.flags(__flags);
return __is;
diff --git a/libstdc++-v3/include/c_global/cstdio b/libstdc++-v3/include/c_global/cstdio
index b4826e213d7..ff5a635a152 100644
--- a/libstdc++-v3/include/c_global/cstdio
+++ b/libstdc++-v3/include/c_global/cstdio
@@ -151,14 +151,16 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC
extern "C" int
- (snprintf)(char * restrict, size_t, const char * restrict, ...);
+ (snprintf)(char * restrict, size_t, const char * restrict, ...) throw ();
extern "C" int
(vfscanf)(FILE * restrict, const char * restrict, __gnuc_va_list);
extern "C" int (vscanf)(const char * restrict, __gnuc_va_list);
extern "C" int
- (vsnprintf)(char * restrict, size_t, const char * restrict, __gnuc_va_list);
+ (vsnprintf)(char * restrict, size_t, const char * restrict, __gnuc_va_list)
+ throw ();
extern "C" int
- (vsscanf)(const char * restrict, const char * restrict, __gnuc_va_list);
+ (vsscanf)(const char * restrict, const char * restrict, __gnuc_va_list)
+ throw ();
#endif
#if !_GLIBCXX_USE_C99_DYNAMIC
diff --git a/libstdc++-v3/include/c_global/cstdlib b/libstdc++-v3/include/c_global/cstdlib
index a29031eb08d..e252d089e75 100644
--- a/libstdc++-v3/include/c_global/cstdlib
+++ b/libstdc++-v3/include/c_global/cstdlib
@@ -57,9 +57,9 @@
_GLIBCXX_BEGIN_NAMESPACE(std)
- extern "C" void abort(void);
- extern "C" int atexit(void (*)());
- extern "C" void exit(int);
+ extern "C" void abort(void) throw () _GLIBC_NORETURN;
+ extern "C" int atexit(void (*)()) throw ();
+ extern "C" void exit(int) throw () _GLIBC_NORETURN;
_GLIBCXX_END_NAMESPACE
@@ -160,7 +160,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
using ::lldiv_t;
#endif
#if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC
- extern "C" void (_Exit)(int);
+ extern "C" void (_Exit)(int) throw () _GLIBCXX_NORETURN;
#endif
#if !_GLIBCXX_USE_C99_DYNAMIC
using ::_Exit;
@@ -180,11 +180,11 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#endif
#if _GLIBCXX_USE_C99_LONG_LONG_CHECK || _GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
- extern "C" long long int (atoll)(const char *);
+ extern "C" long long int (atoll)(const char *) throw ();
extern "C" long long int
- (strtoll)(const char * restrict, char ** restrict, int);
+ (strtoll)(const char * restrict, char ** restrict, int) throw ();
extern "C" unsigned long long int
- (strtoull)(const char * restrict, char ** restrict, int);
+ (strtoull)(const char * restrict, char ** restrict, int) throw ();
#endif
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
using ::atoll;
diff --git a/libstdc++-v3/include/c_global/cwchar b/libstdc++-v3/include/c_global/cwchar
index e5ea07e7ddb..14de5c480ed 100644
--- a/libstdc++-v3/include/c_global/cwchar
+++ b/libstdc++-v3/include/c_global/cwchar
@@ -239,16 +239,16 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC
extern "C" long double
- (wcstold)(const wchar_t * restrict, wchar_t ** restrict);
+ (wcstold)(const wchar_t * restrict, wchar_t ** restrict) throw ();
#endif
#if !_GLIBCXX_USE_C99_DYNAMIC
using ::wcstold;
#endif
#if _GLIBCXX_USE_C99_LONG_LONG_CHECK || _GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
extern "C" long long int
- (wcstoll)(const wchar_t * restrict, wchar_t ** restrict, int);
+ (wcstoll)(const wchar_t * restrict, wchar_t ** restrict, int) throw ();
extern "C" unsigned long long int
- (wcstoull)(const wchar_t * restrict, wchar_t ** restrict, int);
+ (wcstoull)(const wchar_t * restrict, wchar_t ** restrict, int) throw ();
#endif
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
using ::wcstoll;
diff --git a/libstdc++-v3/include/c_std/cstdio b/libstdc++-v3/include/c_std/cstdio
index 2ec91610524..c25b1b1a1f5 100644
--- a/libstdc++-v3/include/c_std/cstdio
+++ b/libstdc++-v3/include/c_std/cstdio
@@ -151,14 +151,16 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC
extern "C" int
- (snprintf)(char * restrict, size_t, const char * restrict, ...);
+ (snprintf)(char * restrict, size_t, const char * restrict, ...) throw ();
extern "C" int
(vfscanf)(FILE * restrict, const char * restrict, __gnuc_va_list);
extern "C" int (vscanf)(const char * restrict, __gnuc_va_list);
extern "C" int
- (vsnprintf)(char * restrict, size_t, const char * restrict, __gnuc_va_list);
+ (vsnprintf)(char * restrict, size_t, const char * restrict, __gnuc_va_list)
+ throw ();
extern "C" int
- (vsscanf)(const char * restrict, const char * restrict, __gnuc_va_list);
+ (vsscanf)(const char * restrict, const char * restrict, __gnuc_va_list)
+ throw ();
#endif
#if !_GLIBCXX_USE_C99_DYNAMIC
diff --git a/libstdc++-v3/include/c_std/cstdlib b/libstdc++-v3/include/c_std/cstdlib
index ecb45a4e269..516dcab5c65 100644
--- a/libstdc++-v3/include/c_std/cstdlib
+++ b/libstdc++-v3/include/c_std/cstdlib
@@ -56,9 +56,9 @@
_GLIBCXX_BEGIN_NAMESPACE(std)
- extern "C" void abort(void);
- extern "C" int atexit(void (*)());
- extern "C" void exit(int);
+ extern "C" void abort(void) throw () _GLIBCXX_NORETURN;
+ extern "C" int atexit(void (*)()) throw ();
+ extern "C" void exit(int) throw () _GLIBCXX_NORETURN;
_GLIBCXX_END_NAMESPACE
@@ -159,7 +159,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
using ::lldiv_t;
#endif
#if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC
- extern "C" void (_Exit)(int);
+ extern "C" void (_Exit)(int) throw () _GLIBCXX_NORETURN;
#endif
#if !_GLIBCXX_USE_C99_DYNAMIC
using ::_Exit;
@@ -179,11 +179,11 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#endif
#if _GLIBCXX_USE_C99_LONG_LONG_CHECK || _GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
- extern "C" long long int (atoll)(const char *);
+ extern "C" long long int (atoll)(const char *) throw ();
extern "C" long long int
- (strtoll)(const char * restrict, char ** restrict, int);
+ (strtoll)(const char * restrict, char ** restrict, int) throw ();
extern "C" unsigned long long int
- (strtoull)(const char * restrict, char ** restrict, int);
+ (strtoull)(const char * restrict, char ** restrict, int) throw ();
#endif
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
using ::atoll;
diff --git a/libstdc++-v3/include/c_std/cwchar b/libstdc++-v3/include/c_std/cwchar
index 7baee60531b..f3bc2c76704 100644
--- a/libstdc++-v3/include/c_std/cwchar
+++ b/libstdc++-v3/include/c_std/cwchar
@@ -239,16 +239,16 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC
extern "C" long double
- (wcstold)(const wchar_t * restrict, wchar_t ** restrict);
+ (wcstold)(const wchar_t * restrict, wchar_t ** restrict) throw ();
#endif
#if !_GLIBCXX_USE_C99_DYNAMIC
using ::wcstold;
#endif
#if _GLIBCXX_USE_C99_LONG_LONG_CHECK || _GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
extern "C" long long int
- (wcstoll)(const wchar_t * restrict, wchar_t ** restrict, int);
+ (wcstoll)(const wchar_t * restrict, wchar_t ** restrict, int) throw ();
extern "C" unsigned long long int
- (wcstoull)(const wchar_t * restrict, wchar_t ** restrict, int);
+ (wcstoull)(const wchar_t * restrict, wchar_t ** restrict, int) throw ();
#endif
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
using ::wcstoll;
diff --git a/libstdc++-v3/include/ext/atomicity.h b/libstdc++-v3/include/ext/atomicity.h
index bb891e8afe6..5cb419ecf59 100644
--- a/libstdc++-v3/include/ext/atomicity.h
+++ b/libstdc++-v3/include/ext/atomicity.h
@@ -51,11 +51,11 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#else
_Atomic_word
__attribute__ ((__unused__))
- __exchange_and_add(volatile _Atomic_word*, int);
+ __exchange_and_add(volatile _Atomic_word*, int) throw ();
void
__attribute__ ((__unused__))
- __atomic_add(volatile _Atomic_word*, int);
+ __atomic_add(volatile _Atomic_word*, int) throw ();
#endif
static inline _Atomic_word
diff --git a/libstdc++-v3/include/ext/bitmap_allocator.h b/libstdc++-v3/include/ext/bitmap_allocator.h
index e5bfa18ec5b..f6790d00043 100644
--- a/libstdc++-v3/include/ext/bitmap_allocator.h
+++ b/libstdc++-v3/include/ext/bitmap_allocator.h
@@ -1049,7 +1049,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
pointer
allocate(size_type __n)
{
- if (__builtin_expect(__n > this->max_size(), false))
+ if (__n > this->max_size())
std::__throw_bad_alloc();
if (__builtin_expect(__n == 1, true))
diff --git a/libstdc++-v3/include/ext/malloc_allocator.h b/libstdc++-v3/include/ext/malloc_allocator.h
index 4c4a72a171c..b432c63a61e 100644
--- a/libstdc++-v3/include/ext/malloc_allocator.h
+++ b/libstdc++-v3/include/ext/malloc_allocator.h
@@ -84,7 +84,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
pointer
allocate(size_type __n, const void* = 0)
{
- if (__builtin_expect(__n > this->max_size(), false))
+ if (__n > this->max_size())
std::__throw_bad_alloc();
pointer __ret = static_cast<_Tp*>(std::malloc(__n * sizeof(_Tp)));
diff --git a/libstdc++-v3/include/ext/mt_allocator.h b/libstdc++-v3/include/ext/mt_allocator.h
index fc31fe8a737..e44b98d4bf7 100644
--- a/libstdc++-v3/include/ext/mt_allocator.h
+++ b/libstdc++-v3/include/ext/mt_allocator.h
@@ -674,7 +674,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
__mt_alloc<_Tp, _Poolp>::
allocate(size_type __n, const void*)
{
- if (__builtin_expect(__n > this->max_size(), false))
+ if (__n > this->max_size())
std::__throw_bad_alloc();
__policy_type::_S_initialize_once();
diff --git a/libstdc++-v3/include/ext/new_allocator.h b/libstdc++-v3/include/ext/new_allocator.h
index 290c73a11c2..51666c3c7fd 100644
--- a/libstdc++-v3/include/ext/new_allocator.h
+++ b/libstdc++-v3/include/ext/new_allocator.h
@@ -83,7 +83,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
pointer
allocate(size_type __n, const void* = 0)
{
- if (__builtin_expect(__n > this->max_size(), false))
+ if (__n > this->max_size())
std::__throw_bad_alloc();
return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
diff --git a/libstdc++-v3/include/ext/pool_allocator.h b/libstdc++-v3/include/ext/pool_allocator.h
index d7077b1986b..b1e61841c0a 100644
--- a/libstdc++-v3/include/ext/pool_allocator.h
+++ b/libstdc++-v3/include/ext/pool_allocator.h
@@ -200,7 +200,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
pointer __ret = 0;
if (__builtin_expect(__n != 0, true))
{
- if (__builtin_expect(__n > this->max_size(), false))
+ if (__n > this->max_size())
std::__throw_bad_alloc();
// If there is a race through here, assume answer from getenv
@@ -230,7 +230,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
*__free_list = __result->_M_free_list_link;
__ret = reinterpret_cast<_Tp*>(__result);
}
- if (__builtin_expect(__ret == 0, 0))
+ if (__ret == 0)
std::__throw_bad_alloc();
}
}
diff --git a/libstdc++-v3/include/ext/rc_string_base.h b/libstdc++-v3/include/ext/rc_string_base.h
index dce5e06710c..6d8c430d575 100644
--- a/libstdc++-v3/include/ext/rc_string_base.h
+++ b/libstdc++-v3/include/ext/rc_string_base.h
@@ -546,7 +546,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
return _S_empty_rep._M_refcopy();
// NB: Not required, but considered best practice.
- if (__builtin_expect(__is_null_pointer(__beg) && __beg != __end, 0))
+ if (__is_null_pointer(__beg) && __beg != __end)
std::__throw_logic_error(__N("__rc_string_base::"
"_S_construct NULL not valid"));
diff --git a/libstdc++-v3/include/ext/sso_string_base.h b/libstdc++-v3/include/ext/sso_string_base.h
index 85a0d7c9b18..6d2af7c46dd 100644
--- a/libstdc++-v3/include/ext/sso_string_base.h
+++ b/libstdc++-v3/include/ext/sso_string_base.h
@@ -428,7 +428,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
std::forward_iterator_tag)
{
// NB: Not required, but considered best practice.
- if (__builtin_expect(__is_null_pointer(__beg) && __beg != __end, 0))
+ if (__is_null_pointer(__beg) && __beg != __end)
std::__throw_logic_error(__N("__sso_string_base::"
"_M_construct NULL not valid"));
diff --git a/libstdc++-v3/include/ext/throw_allocator.h b/libstdc++-v3/include/ext/throw_allocator.h
index c87408fd931..13030546943 100644
--- a/libstdc++-v3/include/ext/throw_allocator.h
+++ b/libstdc++-v3/include/ext/throw_allocator.h
@@ -220,7 +220,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
pointer
allocate(size_type __n, std::allocator<void>::const_pointer hint = 0)
{
- if (__builtin_expect(__n > this->max_size(), false))
+ if (__n > this->max_size())
std::__throw_bad_alloc();
throw_conditionally();
diff --git a/libstdc++-v3/include/tr1_impl/array b/libstdc++-v3/include/tr1_impl/array
index c0bd24076fa..7cd3db3d0f9 100644
--- a/libstdc++-v3/include/tr1_impl/array
+++ b/libstdc++-v3/include/tr1_impl/array
@@ -149,7 +149,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
reference
at(size_type __n)
{
- if (__builtin_expect(__n >= _Nm, false))
+ if (__n >= _Nm)
std::__throw_out_of_range(__N("array::at"));
return _M_instance[__n];
}
@@ -157,7 +157,7 @@ _GLIBCXX_BEGIN_NAMESPACE_TR1
const_reference
at(size_type __n) const
{
- if (__builtin_expect(__n >= _Nm, false))
+ if (__n >= _Nm)
std::__throw_out_of_range(__N("array::at"));
return _M_instance[__n];
}