summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2012-11-10 17:27:22 +0000
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2012-11-10 17:27:22 +0000
commit0c8766b14373cdc13b9c966130ec877e0fa29865 (patch)
treed9b336f73d8705f567b8e2871708f2dca7cadb44
parentf955ca518bf9bfa53aabe55c11a67c6c5a2a3581 (diff)
downloadppe42-gcc-0c8766b14373cdc13b9c966130ec877e0fa29865.tar.gz
ppe42-gcc-0c8766b14373cdc13b9c966130ec877e0fa29865.zip
* many: Replace uses of __GXX_EXPERIMENTAL_CXX0X__ with __cplusplus.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@193392 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libstdc++-v3/ChangeLog4
-rw-r--r--libstdc++-v3/config/allocator/bitmap_allocator_base.h2
-rw-r--r--libstdc++-v3/config/allocator/malloc_allocator_base.h2
-rw-r--r--libstdc++-v3/config/allocator/mt_allocator_base.h2
-rw-r--r--libstdc++-v3/config/allocator/new_allocator_base.h2
-rw-r--r--libstdc++-v3/config/allocator/pool_allocator_base.h2
-rw-r--r--libstdc++-v3/doc/doxygen/user.cfg.in1
-rw-r--r--libstdc++-v3/doc/html/manual/status.html2
-rw-r--r--libstdc++-v3/doc/xml/manual/status_cxx2011.xml2
-rw-r--r--libstdc++-v3/include/backward/auto_ptr.h2
-rw-r--r--libstdc++-v3/include/bits/algorithmfwd.h24
-rw-r--r--libstdc++-v3/include/bits/alloc_traits.h2
-rw-r--r--libstdc++-v3/include/bits/allocator.h2
-rw-r--r--libstdc++-v3/include/bits/basic_string.h54
-rw-r--r--libstdc++-v3/include/bits/basic_string.tcc2
-rw-r--r--libstdc++-v3/include/bits/c++0x_warning.h2
-rw-r--r--libstdc++-v3/include/bits/c++config8
-rw-r--r--libstdc++-v3/include/bits/char_traits.h2
-rw-r--r--libstdc++-v3/include/bits/cpp_type_traits.h4
-rw-r--r--libstdc++-v3/include/bits/deque.tcc20
-rw-r--r--libstdc++-v3/include/bits/forward_list.h2
-rw-r--r--libstdc++-v3/include/bits/list.tcc10
-rw-r--r--libstdc++-v3/include/bits/move.h6
-rw-r--r--libstdc++-v3/include/bits/postypes.h2
-rw-r--r--libstdc++-v3/include/bits/ptr_traits.h2
-rw-r--r--libstdc++-v3/include/bits/range_access.h4
-rw-r--r--libstdc++-v3/include/bits/stl_algo.h12
-rw-r--r--libstdc++-v3/include/bits/stl_algobase.h16
-rw-r--r--libstdc++-v3/include/bits/stl_bvector.h36
-rw-r--r--libstdc++-v3/include/bits/stl_construct.h2
-rw-r--r--libstdc++-v3/include/bits/stl_deque.h44
-rw-r--r--libstdc++-v3/include/bits/stl_function.h4
-rw-r--r--libstdc++-v3/include/bits/stl_heap.h2
-rw-r--r--libstdc++-v3/include/bits/stl_iterator.h14
-rw-r--r--libstdc++-v3/include/bits/stl_iterator_base_funcs.h4
-rw-r--r--libstdc++-v3/include/bits/stl_iterator_base_types.h6
-rw-r--r--libstdc++-v3/include/bits/stl_list.h58
-rw-r--r--libstdc++-v3/include/bits/stl_map.h26
-rw-r--r--libstdc++-v3/include/bits/stl_multimap.h22
-rw-r--r--libstdc++-v3/include/bits/stl_multiset.h20
-rw-r--r--libstdc++-v3/include/bits/stl_numeric.h2
-rw-r--r--libstdc++-v3/include/bits/stl_pair.h10
-rw-r--r--libstdc++-v3/include/bits/stl_queue.h18
-rw-r--r--libstdc++-v3/include/bits/stl_set.h20
-rw-r--r--libstdc++-v3/include/bits/stl_stack.h8
-rw-r--r--libstdc++-v3/include/bits/stl_tree.h48
-rw-r--r--libstdc++-v3/include/bits/stl_uninitialized.h2
-rw-r--r--libstdc++-v3/include/bits/stl_vector.h48
-rw-r--r--libstdc++-v3/include/bits/streambuf_iterator.h4
-rw-r--r--libstdc++-v3/include/bits/stringfwd.h2
-rw-r--r--libstdc++-v3/include/bits/uses_allocator.h2
-rw-r--r--libstdc++-v3/include/bits/vector.tcc24
-rw-r--r--libstdc++-v3/include/c_compatibility/complex.h2
-rw-r--r--libstdc++-v3/include/c_compatibility/fenv.h4
-rw-r--r--libstdc++-v3/include/c_compatibility/inttypes.h4
-rw-r--r--libstdc++-v3/include/c_compatibility/stdbool.h2
-rw-r--r--libstdc++-v3/include/c_compatibility/stdint.h4
-rw-r--r--libstdc++-v3/include/c_compatibility/tgmath.h2
-rw-r--r--libstdc++-v3/include/c_global/ccomplex2
-rw-r--r--libstdc++-v3/include/c_global/cctype4
-rw-r--r--libstdc++-v3/include/c_global/cfenv4
-rw-r--r--libstdc++-v3/include/c_global/cfloat2
-rw-r--r--libstdc++-v3/include/c_global/cinttypes4
-rw-r--r--libstdc++-v3/include/c_global/cmath8
-rw-r--r--libstdc++-v3/include/c_global/cstdalign2
-rw-r--r--libstdc++-v3/include/c_global/cstdbool2
-rw-r--r--libstdc++-v3/include/c_global/cstdint4
-rw-r--r--libstdc++-v3/include/c_global/ctgmath2
-rw-r--r--libstdc++-v3/include/c_global/cwchar4
-rw-r--r--libstdc++-v3/include/debug/bitset16
-rw-r--r--libstdc++-v3/include/debug/deque24
-rw-r--r--libstdc++-v3/include/debug/list44
-rw-r--r--libstdc++-v3/include/debug/map.h20
-rw-r--r--libstdc++-v3/include/debug/multimap.h20
-rw-r--r--libstdc++-v3/include/debug/multiset.h18
-rw-r--r--libstdc++-v3/include/debug/safe_iterator.h4
-rw-r--r--libstdc++-v3/include/debug/set.h18
-rw-r--r--libstdc++-v3/include/debug/string38
-rw-r--r--libstdc++-v3/include/debug/unordered_map4
-rw-r--r--libstdc++-v3/include/debug/unordered_set4
-rw-r--r--libstdc++-v3/include/debug/vector34
-rw-r--r--libstdc++-v3/include/ext/algorithm6
-rw-r--r--libstdc++-v3/include/ext/alloc_traits.h8
-rw-r--r--libstdc++-v3/include/ext/array_allocator.h2
-rw-r--r--libstdc++-v3/include/ext/bitmap_allocator.h2
-rw-r--r--libstdc++-v3/include/ext/extptr_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/numeric4
-rw-r--r--libstdc++-v3/include/ext/pb_ds/detail/type_utils.hpp2
-rw-r--r--libstdc++-v3/include/ext/pointer.h4
-rw-r--r--libstdc++-v3/include/ext/pool_allocator.h2
-rw-r--r--libstdc++-v3/include/ext/random4
-rw-r--r--libstdc++-v3/include/ext/rc_string_base.h2
-rw-r--r--libstdc++-v3/include/ext/sso_string_base.h4
-rw-r--r--libstdc++-v3/include/ext/throw_allocator.h22
-rw-r--r--libstdc++-v3/include/ext/vstring.h58
-rw-r--r--libstdc++-v3/include/ext/vstring_fwd.h2
-rw-r--r--libstdc++-v3/include/parallel/algo.h2
-rw-r--r--libstdc++-v3/include/parallel/algorithmfwd.h2
-rw-r--r--libstdc++-v3/include/precompiled/extc++.h2
-rw-r--r--libstdc++-v3/include/precompiled/stdc++.h4
-rw-r--r--libstdc++-v3/include/profile/bitset8
-rw-r--r--libstdc++-v3/include/profile/deque24
-rw-r--r--libstdc++-v3/include/profile/forward_list4
-rw-r--r--libstdc++-v3/include/profile/impl/profiler_trace.h2
-rw-r--r--libstdc++-v3/include/profile/list44
-rw-r--r--libstdc++-v3/include/profile/map.h26
-rw-r--r--libstdc++-v3/include/profile/multimap.h24
-rw-r--r--libstdc++-v3/include/profile/multiset.h22
-rw-r--r--libstdc++-v3/include/profile/set.h22
-rw-r--r--libstdc++-v3/include/profile/unordered_map4
-rw-r--r--libstdc++-v3/include/profile/unordered_set4
-rw-r--r--libstdc++-v3/include/profile/vector30
-rw-r--r--libstdc++-v3/include/std/array4
-rw-r--r--libstdc++-v3/include/std/atomic2
-rw-r--r--libstdc++-v3/include/std/bitset32
-rw-r--r--libstdc++-v3/include/std/chrono4
-rw-r--r--libstdc++-v3/include/std/complex24
-rw-r--r--libstdc++-v3/include/std/condition_variable4
-rw-r--r--libstdc++-v3/include/std/forward_list4
-rw-r--r--libstdc++-v3/include/std/fstream16
-rw-r--r--libstdc++-v3/include/std/functional4
-rw-r--r--libstdc++-v3/include/std/future4
-rw-r--r--libstdc++-v3/include/std/iomanip4
-rw-r--r--libstdc++-v3/include/std/istream6
-rw-r--r--libstdc++-v3/include/std/limits80
-rw-r--r--libstdc++-v3/include/std/memory2
-rw-r--r--libstdc++-v3/include/std/mutex4
-rw-r--r--libstdc++-v3/include/std/ostream6
-rw-r--r--libstdc++-v3/include/std/random4
-rw-r--r--libstdc++-v3/include/std/ratio4
-rw-r--r--libstdc++-v3/include/std/regex4
-rw-r--r--libstdc++-v3/include/std/scoped_allocator4
-rw-r--r--libstdc++-v3/include/std/system_error4
-rw-r--r--libstdc++-v3/include/std/thread4
-rw-r--r--libstdc++-v3/include/std/tuple4
-rw-r--r--libstdc++-v3/include/std/type_traits4
-rw-r--r--libstdc++-v3/include/std/typeindex4
-rw-r--r--libstdc++-v3/include/std/unordered_map4
-rw-r--r--libstdc++-v3/include/std/unordered_set4
-rw-r--r--libstdc++-v3/include/std/utility2
-rw-r--r--libstdc++-v3/include/std/valarray24
-rw-r--r--libstdc++-v3/include/tr1/complex8
-rw-r--r--libstdc++-v3/include/tr1/functional14
-rw-r--r--libstdc++-v3/include/tr1/shared_ptr.h8
-rw-r--r--libstdc++-v3/libsupc++/atomic_lockfree_defines.h2
-rw-r--r--libstdc++-v3/libsupc++/exception2
-rw-r--r--libstdc++-v3/libsupc++/exception_ptr.h8
-rw-r--r--libstdc++-v3/libsupc++/initializer_list4
-rw-r--r--libstdc++-v3/libsupc++/nested_exception.h4
-rw-r--r--libstdc++-v3/libsupc++/typeinfo6
-rw-r--r--libstdc++-v3/src/c++11/compatibility-c++0x.cc2
-rw-r--r--libstdc++-v3/src/c++11/compatibility-thread-c++0x.cc2
-rw-r--r--libstdc++-v3/src/c++11/hash_c++0x.cc2
-rw-r--r--libstdc++-v3/src/c++11/hashtable_c++0x.cc2
-rw-r--r--libstdc++-v3/src/c++11/placeholders.cc2
-rw-r--r--libstdc++-v3/testsuite/18_support/50594.cc4
-rw-r--r--libstdc++-v3/testsuite/23_containers/bitset/debug/invalidation/1.cc2
-rw-r--r--libstdc++-v3/testsuite/23_containers/deque/requirements/explicit_instantiation/2.cc2
-rw-r--r--libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/2.cc2
-rw-r--r--libstdc++-v3/testsuite/23_containers/map/modifiers/erase/47628.cc2
-rw-r--r--libstdc++-v3/testsuite/23_containers/multimap/modifiers/erase/47628.cc2
-rw-r--r--libstdc++-v3/testsuite/23_containers/vector/requirements/explicit_instantiation/2.cc2
-rw-r--r--libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/requirements/base_classes.cc2
-rw-r--r--libstdc++-v3/testsuite/25_algorithms/headers/algorithm/synopsis.cc10
-rw-r--r--libstdc++-v3/testsuite/util/testsuite_allocator.h8
-rw-r--r--libstdc++-v3/testsuite/util/testsuite_api.h4
-rw-r--r--libstdc++-v3/testsuite/util/testsuite_character.h2
-rw-r--r--libstdc++-v3/testsuite/util/testsuite_common_types.h16
-rw-r--r--libstdc++-v3/testsuite/util/testsuite_counter_type.h8
-rw-r--r--libstdc++-v3/testsuite/util/testsuite_iterators.h4
-rw-r--r--libstdc++-v3/testsuite/util/testsuite_tr1.h8
174 files changed, 846 insertions, 843 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index a6567999839..9b483a3d20c 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,7 @@
+2012-11-10 Jason Merrill <jason@redhat.com>
+
+ * many: Replace uses of __GXX_EXPERIMENTAL_CXX0X__ with __cplusplus.
+
2012-11-08 François Dumont <fdumont@gcc.gnu.org>
PR libstdc++/54075
diff --git a/libstdc++-v3/config/allocator/bitmap_allocator_base.h b/libstdc++-v3/config/allocator/bitmap_allocator_base.h
index 4abe615274b..88fb2b8f742 100644
--- a/libstdc++-v3/config/allocator/bitmap_allocator_base.h
+++ b/libstdc++-v3/config/allocator/bitmap_allocator_base.h
@@ -32,7 +32,7 @@
#include <ext/bitmap_allocator.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std
{
/**
diff --git a/libstdc++-v3/config/allocator/malloc_allocator_base.h b/libstdc++-v3/config/allocator/malloc_allocator_base.h
index e40f424b60b..ef6abb77743 100644
--- a/libstdc++-v3/config/allocator/malloc_allocator_base.h
+++ b/libstdc++-v3/config/allocator/malloc_allocator_base.h
@@ -32,7 +32,7 @@
#include <ext/malloc_allocator.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std
{
/**
diff --git a/libstdc++-v3/config/allocator/mt_allocator_base.h b/libstdc++-v3/config/allocator/mt_allocator_base.h
index 66ab6a05245..28397c2a077 100644
--- a/libstdc++-v3/config/allocator/mt_allocator_base.h
+++ b/libstdc++-v3/config/allocator/mt_allocator_base.h
@@ -32,7 +32,7 @@
#include <ext/mt_allocator.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std
{
/**
diff --git a/libstdc++-v3/config/allocator/new_allocator_base.h b/libstdc++-v3/config/allocator/new_allocator_base.h
index 7a0b71becaf..e65c9ad91a7 100644
--- a/libstdc++-v3/config/allocator/new_allocator_base.h
+++ b/libstdc++-v3/config/allocator/new_allocator_base.h
@@ -32,7 +32,7 @@
#include <ext/new_allocator.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std
{
/**
diff --git a/libstdc++-v3/config/allocator/pool_allocator_base.h b/libstdc++-v3/config/allocator/pool_allocator_base.h
index 2fc49e2eccb..83accffd454 100644
--- a/libstdc++-v3/config/allocator/pool_allocator_base.h
+++ b/libstdc++-v3/config/allocator/pool_allocator_base.h
@@ -32,7 +32,7 @@
#include <ext/pool_allocator.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std
{
/**
diff --git a/libstdc++-v3/doc/doxygen/user.cfg.in b/libstdc++-v3/doc/doxygen/user.cfg.in
index 3bf306f17f4..9d2ab05c4c6 100644
--- a/libstdc++-v3/doc/doxygen/user.cfg.in
+++ b/libstdc++-v3/doc/doxygen/user.cfg.in
@@ -1701,7 +1701,6 @@ INCLUDE_FILE_PATTERNS =
PREDEFINED = __cplusplus \
__GTHREADS \
_GLIBCXX_HAS_GTHREADS \
- __GXX_EXPERIMENTAL_CXX0X__ \
_GLIBCXX_INCLUDE_AS_CXX0X \
"_GLIBCXX_PURE= " \
"_GLIBCXX_CONST= " \
diff --git a/libstdc++-v3/doc/html/manual/status.html b/libstdc++-v3/doc/html/manual/status.html
index bc62c40cb57..20589f6722b 100644
--- a/libstdc++-v3/doc/html/manual/status.html
+++ b/libstdc++-v3/doc/html/manual/status.html
@@ -153,7 +153,7 @@ In this implementation <code class="literal">-std=gnu++11</code> or
and library
features. See <a class="link" href="using.html#manual.intro.using.flags" title="Command Options">dialect</a>
options. The pre-defined symbol
-<code class="constant">__GXX_EXPERIMENTAL_CXX0X__</code> is used to check for the
+<code class="constant">__cplusplus</code> is used to check for the
presence of the required flag.
</p><p>
This page describes the C++11 support in mainline GCC SVN, not in any
diff --git a/libstdc++-v3/doc/xml/manual/status_cxx2011.xml b/libstdc++-v3/doc/xml/manual/status_cxx2011.xml
index 6b1ad51cd71..aae3aece62e 100644
--- a/libstdc++-v3/doc/xml/manual/status_cxx2011.xml
+++ b/libstdc++-v3/doc/xml/manual/status_cxx2011.xml
@@ -26,7 +26,7 @@ In this implementation <literal>-std=gnu++11</literal> or
and library
features. See <link linkend="manual.intro.using.flags">dialect</link>
options. The pre-defined symbol
-<constant>__GXX_EXPERIMENTAL_CXX0X__</constant> is used to check for the
+<constant>__cplusplus</constant> is used to check for the
presence of the required flag.
</para>
diff --git a/libstdc++-v3/include/backward/auto_ptr.h b/libstdc++-v3/include/backward/auto_ptr.h
index 01702f7b23f..2421791dc4d 100644
--- a/libstdc++-v3/include/backward/auto_ptr.h
+++ b/libstdc++-v3/include/backward/auto_ptr.h
@@ -289,7 +289,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typedef void element_type;
} _GLIBCXX_DEPRECATED;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<_Lock_policy _Lp>
template<typename _Tp>
inline
diff --git a/libstdc++-v3/include/bits/algorithmfwd.h b/libstdc++-v3/include/bits/algorithmfwd.h
index fbec55d0c36..856a8d94860 100644
--- a/libstdc++-v3/include/bits/algorithmfwd.h
+++ b/libstdc++-v3/include/bits/algorithmfwd.h
@@ -35,7 +35,7 @@
#include <bits/c++config.h>
#include <bits/stl_pair.h>
#include <bits/stl_iterator_base_types.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -190,7 +190,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// adjacent_find
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _IIter, typename _Predicate>
bool
all_of(_IIter, _IIter, _Predicate);
@@ -216,7 +216,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_BIter2
copy_backward(_BIter1, _BIter1, _BIter2);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _IIter, typename _OIter, typename _Predicate>
_OIter
copy_if(_IIter, _IIter, _OIter, _Predicate);
@@ -258,7 +258,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// find_first_of
// find_if
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _IIter, typename _Predicate>
_IIter
find_if_not(_IIter, _IIter, _Predicate);
@@ -284,7 +284,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
void
inplace_merge(_BIter, _BIter, _BIter, _Compare);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _RAIter>
bool
is_heap(_RAIter, _RAIter);
@@ -372,7 +372,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// min_element
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp>
pair<const _Tp&, const _Tp&>
minmax(const _Tp&, const _Tp&);
@@ -424,7 +424,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
bool
next_permutation(_BIter, _BIter, _Compare);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _IIter, typename _Predicate>
bool
none_of(_IIter, _IIter, _Predicate);
@@ -443,7 +443,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// partition
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _IIter, typename _OIter1,
typename _OIter2, typename _Predicate>
pair<_OIter1, _OIter2>
@@ -531,7 +531,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// set_symmetric_difference
// set_union
-#if defined(__GXX_EXPERIMENTAL_CXX0X__) && defined(_GLIBCXX_USE_C99_STDINT_TR1)
+#if (__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99_STDINT_TR1)
template<typename _RAIter, typename _UGenerator>
void
shuffle(_RAIter, _RAIter, _UGenerator&&);
@@ -552,7 +552,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Tp>
void
swap(_Tp&, _Tp&)
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
noexcept(__and_<is_nothrow_move_constructible<_Tp>,
is_nothrow_move_assignable<_Tp>>::value)
#endif
@@ -561,7 +561,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Tp, size_t _Nm>
void
swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
noexcept(noexcept(swap(*__a, *__b)))
#endif
;
@@ -714,7 +714,7 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO
template<typename _RAIter, typename _Generator>
void
random_shuffle(_RAIter, _RAIter,
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_Generator&&);
#else
_Generator&);
diff --git a/libstdc++-v3/include/bits/alloc_traits.h b/libstdc++-v3/include/bits/alloc_traits.h
index 80cc956a6fb..9abadbb77ce 100644
--- a/libstdc++-v3/include/bits/alloc_traits.h
+++ b/libstdc++-v3/include/bits/alloc_traits.h
@@ -30,7 +30,7 @@
#ifndef _ALLOC_TRAITS_H
#define _ALLOC_TRAITS_H 1
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <bits/ptr_traits.h>
#include <ext/numeric_traits.h>
diff --git a/libstdc++-v3/include/bits/allocator.h b/libstdc++-v3/include/bits/allocator.h
index 49ba0b5be4f..0989ad88cf0 100644
--- a/libstdc++-v3/include/bits/allocator.h
+++ b/libstdc++-v3/include/bits/allocator.h
@@ -188,7 +188,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return __one != __two; }
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, bool
= __or_<is_copy_constructible<typename _Tp::value_type>,
is_nothrow_move_constructible<typename _Tp::value_type>>::value>
diff --git a/libstdc++-v3/include/bits/basic_string.h b/libstdc++-v3/include/bits/basic_string.h
index 24562c462b8..1e3426680fc 100644
--- a/libstdc++-v3/include/bits/basic_string.h
+++ b/libstdc++-v3/include/bits/basic_string.h
@@ -40,7 +40,7 @@
#include <ext/atomicity.h>
#include <debug/debug.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -498,7 +498,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
*/
basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc());
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Move construct string.
* @param __str Source string.
@@ -522,7 +522,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @param __a Allocator to use (default is default allocator).
*/
basic_string(initializer_list<_CharT> __l, const _Alloc& __a = _Alloc());
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Construct string as copy of a range.
@@ -570,7 +570,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Move assign the value of @a str to this string.
* @param __str Source string.
@@ -596,7 +596,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
this->assign(__l.begin(), __l.size());
return *this;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
// Iterators:
/**
@@ -673,7 +673,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(this->begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read-only (constant) iterator that points to the first
* character in the %string.
@@ -755,7 +755,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
resize(size_type __n)
{ this->resize(__n, _CharT()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/// A non-binding request to reduce capacity() to size().
void
shrink_to_fit()
@@ -890,7 +890,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return _M_data()[__n];
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read/write reference to the data at the first
* element of the %string.
@@ -955,7 +955,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Append an initializer_list of characters.
* @param __l The initializer_list of characters to be appended.
@@ -964,7 +964,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
basic_string&
operator+=(initializer_list<_CharT> __l)
{ return this->append(__l.begin(), __l.size()); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Append a string to this string.
@@ -1022,7 +1022,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
basic_string&
append(size_type __n, _CharT __c);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Append an initializer_list of characters.
* @param __l The initializer_list of characters to append.
@@ -1031,7 +1031,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
basic_string&
append(initializer_list<_CharT> __l)
{ return this->append(__l.begin(), __l.size()); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Append a range of characters.
@@ -1068,7 +1068,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
basic_string&
assign(const basic_string& __str);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Set value to contents of another string.
* @param __str Source string to use.
@@ -1083,7 +1083,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
this->swap(__str);
return *this;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Set value to a substring of a string.
@@ -1159,7 +1159,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
assign(_InputIterator __first, _InputIterator __last)
{ return this->replace(_M_ibegin(), _M_iend(), __first, __last); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Set value to an initializer_list of characters.
* @param __l The initializer_list of characters to assign.
@@ -1168,7 +1168,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
basic_string&
assign(initializer_list<_CharT> __l)
{ return this->assign(__l.begin(), __l.size()); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Insert multiple characters.
@@ -1204,7 +1204,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
insert(iterator __p, _InputIterator __beg, _InputIterator __end)
{ this->replace(__p, __p, __beg, __end); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Insert an initializer_list of characters.
* @param __p Iterator referencing location in string to insert at.
@@ -1217,7 +1217,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_DEBUG_PEDASSERT(__p >= _M_ibegin() && __p <= _M_iend());
this->insert(__p - _M_ibegin(), __l.begin(), __l.size());
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Insert value of a string.
@@ -1399,7 +1399,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
iterator
erase(iterator __first, iterator __last);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Remove the last character.
*
@@ -1408,7 +1408,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
void
pop_back()
{ erase(size()-1, 1); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Replace characters with value from another string.
@@ -1676,7 +1676,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__k1.base(), __k2 - __k1);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Replace range of characters with initializer_list.
* @param __i1 Iterator referencing start of range to replace.
@@ -1694,7 +1694,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
basic_string& replace(iterator __i1, iterator __i2,
initializer_list<_CharT> __l)
{ return this->replace(__i1, __i2, __l.begin(), __l.end()); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
private:
template<class _Integer>
@@ -2426,7 +2426,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return __str;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _CharT, typename _Traits, typename _Alloc>
inline basic_string<_CharT, _Traits, _Alloc>
operator+(basic_string<_CharT, _Traits, _Alloc>&& __lhs,
@@ -2813,7 +2813,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#if (defined(__GXX_EXPERIMENTAL_CXX0X__) && defined(_GLIBCXX_USE_C99) \
+#if ((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99) \
&& !defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF))
#include <ext/string_conversions.h>
@@ -3030,9 +3030,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif /* __GXX_EXPERIMENTAL_CXX0X__ && _GLIBCXX_USE_C99 ... */
+#endif /* C++11 && _GLIBCXX_USE_C99 ... */
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <bits/functional_hash.h>
@@ -3094,6 +3094,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif /* __GXX_EXPERIMENTAL_CXX0X__ */
+#endif // C++11
#endif /* _BASIC_STRING_H */
diff --git a/libstdc++-v3/include/bits/basic_string.tcc b/libstdc++-v3/include/bits/basic_string.tcc
index 7eff81819f6..726ae6dfbf1 100644
--- a/libstdc++-v3/include/bits/basic_string.tcc
+++ b/libstdc++-v3/include/bits/basic_string.tcc
@@ -231,7 +231,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
: _M_dataplus(_S_construct(__beg, __end, __a), __a)
{ }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _CharT, typename _Traits, typename _Alloc>
basic_string<_CharT, _Traits, _Alloc>::
basic_string(initializer_list<_CharT> __l, const _Alloc& __a)
diff --git a/libstdc++-v3/include/bits/c++0x_warning.h b/libstdc++-v3/include/bits/c++0x_warning.h
index eb072d00a45..7dc00a1bc06 100644
--- a/libstdc++-v3/include/bits/c++0x_warning.h
+++ b/libstdc++-v3/include/bits/c++0x_warning.h
@@ -28,7 +28,7 @@
#ifndef _CXX0X_WARNING_H
#define _CXX0X_WARNING_H 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
#error This file requires compiler and library support for the \
ISO C++ 2011 standard. This support is currently experimental, and must be \
enabled with the -std=c++11 or -std=gnu++11 compiler options.
diff --git a/libstdc++-v3/include/bits/c++config b/libstdc++-v3/include/bits/c++config
index aba931b08cc..279df04d82f 100644
--- a/libstdc++-v3/include/bits/c++config
+++ b/libstdc++-v3/include/bits/c++config
@@ -78,7 +78,7 @@
# define _GLIBCXX_USE_DEPRECATED 1
#endif
-#if defined(__DEPRECATED) && defined(__GXX_EXPERIMENTAL_CXX0X__)
+#if defined(__DEPRECATED) && (__cplusplus >= 201103L)
# define _GLIBCXX_DEPRECATED __attribute__ ((__deprecated__))
#else
# define _GLIBCXX_DEPRECATED
@@ -88,7 +88,7 @@
// Macro for constexpr, to support in mixed 03/0x mode.
#ifndef _GLIBCXX_CONSTEXPR
-# ifdef __GXX_EXPERIMENTAL_CXX0X__
+# if __cplusplus >= 201103L
# define _GLIBCXX_CONSTEXPR constexpr
# define _GLIBCXX_USE_CONSTEXPR constexpr
# else
@@ -99,7 +99,7 @@
// Macro for noexcept, to support in mixed 03/0x mode.
#ifndef _GLIBCXX_NOEXCEPT
-# ifdef __GXX_EXPERIMENTAL_CXX0X__
+# if __cplusplus >= 201103L
# define _GLIBCXX_NOEXCEPT noexcept
# define _GLIBCXX_USE_NOEXCEPT noexcept
# define _GLIBCXX_THROW(_EXC)
@@ -180,7 +180,7 @@ namespace std
typedef __SIZE_TYPE__ size_t;
typedef __PTRDIFF_TYPE__ ptrdiff_t;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
typedef decltype(nullptr) nullptr_t;
#endif
}
diff --git a/libstdc++-v3/include/bits/char_traits.h b/libstdc++-v3/include/bits/char_traits.h
index 2024a333229..db6862a0146 100644
--- a/libstdc++-v3/include/bits/char_traits.h
+++ b/libstdc++-v3/include/bits/char_traits.h
@@ -372,7 +372,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#if (defined(__GXX_EXPERIMENTAL_CXX0X__) \
+#if ((__cplusplus >= 201103L) \
&& defined(_GLIBCXX_USE_C99_STDINT_TR1))
#include <cstdint>
diff --git a/libstdc++-v3/include/bits/cpp_type_traits.h b/libstdc++-v3/include/bits/cpp_type_traits.h
index 166890fb8fd..ed856e9c354 100644
--- a/libstdc++-v3/include/bits/cpp_type_traits.h
+++ b/libstdc++-v3/include/bits/cpp_type_traits.h
@@ -180,7 +180,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
};
# endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<>
struct __is_integer<char16_t>
{
@@ -407,7 +407,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typedef __false_type __type;
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Iterator>
class move_iterator;
diff --git a/libstdc++-v3/include/bits/deque.tcc b/libstdc++-v3/include/bits/deque.tcc
index fcece60c8bb..6f987199a67 100644
--- a/libstdc++-v3/include/bits/deque.tcc
+++ b/libstdc++-v3/include/bits/deque.tcc
@@ -62,7 +62,7 @@ namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_CONTAINER
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template <typename _Tp, typename _Alloc>
void
deque<_Tp, _Alloc>::
@@ -110,7 +110,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Alloc>
template<typename... _Args>
void
@@ -166,7 +166,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return _M_insert_aux(__position, __x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Alloc>
template<typename... _Args>
typename deque<_Tp, _Alloc>::iterator
@@ -303,7 +303,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_insert_aux(__pos, __n, __x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template <typename _Tp, typename _Alloc>
void
deque<_Tp, _Alloc>::
@@ -430,7 +430,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
// Called only if _M_impl._M_finish._M_cur == _M_impl._M_finish._M_last - 1.
template<typename _Tp, typename _Alloc>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
void
deque<_Tp, _Alloc>::
@@ -445,7 +445,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
*(this->_M_impl._M_finish._M_node + 1) = this->_M_allocate_node();
__try
{
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
this->_M_impl.construct(this->_M_impl._M_finish._M_cur,
std::forward<_Args>(__args)...);
#else
@@ -464,7 +464,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
// Called only if _M_impl._M_start._M_cur == _M_impl._M_start._M_first.
template<typename _Tp, typename _Alloc>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
void
deque<_Tp, _Alloc>::
@@ -482,7 +482,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
this->_M_impl._M_start._M_set_node(this->_M_impl._M_start._M_node
- 1);
this->_M_impl._M_start._M_cur = this->_M_impl._M_start._M_last - 1;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
this->_M_impl.construct(this->_M_impl._M_start._M_cur,
std::forward<_Args>(__args)...);
#else
@@ -579,7 +579,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
template<typename _Tp, typename _Alloc>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
typename deque<_Tp, _Alloc>::iterator
deque<_Tp, _Alloc>::
@@ -996,7 +996,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return __result;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp>
_Deque_iterator<_Tp, _Tp&, _Tp*>
move(_Deque_iterator<_Tp, const _Tp&, const _Tp*> __first,
diff --git a/libstdc++-v3/include/bits/forward_list.h b/libstdc++-v3/include/bits/forward_list.h
index 9efabcf953a..dcd3fccd3b8 100644
--- a/libstdc++-v3/include/bits/forward_list.h
+++ b/libstdc++-v3/include/bits/forward_list.h
@@ -33,7 +33,7 @@
#pragma GCC system_header
#include <memory>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
diff --git a/libstdc++-v3/include/bits/list.tcc b/libstdc++-v3/include/bits/list.tcc
index 727e82d3d8d..066d16011a9 100644
--- a/libstdc++-v3/include/bits/list.tcc
+++ b/libstdc++-v3/include/bits/list.tcc
@@ -72,7 +72,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{
_Node* __tmp = __cur;
__cur = static_cast<_Node*>(__cur->_M_next);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_M_get_Node_allocator().destroy(__tmp);
#else
_M_get_Tp_allocator().destroy(std::__addressof(__tmp->_M_data));
@@ -81,7 +81,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Alloc>
template<typename... _Args>
typename list<_Tp, _Alloc>::iterator
@@ -114,7 +114,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return __ret;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Alloc>
void
list<_Tp, _Alloc>::
@@ -285,7 +285,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
template<typename _Tp, typename _Alloc>
void
list<_Tp, _Alloc>::
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
merge(list&& __x)
#else
merge(list& __x)
@@ -319,7 +319,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
template <typename _StrictWeakOrdering>
void
list<_Tp, _Alloc>::
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
merge(list&& __x, _StrictWeakOrdering __comp)
#else
merge(list& __x, _StrictWeakOrdering __comp)
diff --git a/libstdc++-v3/include/bits/move.h b/libstdc++-v3/include/bits/move.h
index 236f0de300a..c19e0b0fe2c 100644
--- a/libstdc++-v3/include/bits/move.h
+++ b/libstdc++-v3/include/bits/move.h
@@ -53,7 +53,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <type_traits> // Brings in std::declval too.
namespace std _GLIBCXX_VISIBILITY(default)
@@ -164,7 +164,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Tp>
inline void
swap(_Tp& __a, _Tp& __b)
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
noexcept(__and_<is_nothrow_move_constructible<_Tp>,
is_nothrow_move_assignable<_Tp>>::value)
#endif
@@ -183,7 +183,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Tp, size_t _Nm>
inline void
swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
noexcept(noexcept(swap(*__a, *__b)))
#endif
{
diff --git a/libstdc++-v3/include/bits/postypes.h b/libstdc++-v3/include/bits/postypes.h
index 69235d9a099..71492a543a2 100644
--- a/libstdc++-v3/include/bits/postypes.h
+++ b/libstdc++-v3/include/bits/postypes.h
@@ -231,7 +231,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/// File position for wchar_t streams.
typedef fpos<mbstate_t> wstreampos;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/// File position for char16_t streams.
typedef fpos<mbstate_t> u16streampos;
/// File position for char32_t streams.
diff --git a/libstdc++-v3/include/bits/ptr_traits.h b/libstdc++-v3/include/bits/ptr_traits.h
index 552f48745f3..33db837c620 100644
--- a/libstdc++-v3/include/bits/ptr_traits.h
+++ b/libstdc++-v3/include/bits/ptr_traits.h
@@ -30,7 +30,7 @@
#ifndef _PTR_TRAITS_H
#define _PTR_TRAITS_H 1
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <type_traits> // For _GLIBCXX_HAS_NESTED_TYPE
diff --git a/libstdc++-v3/include/bits/range_access.h b/libstdc++-v3/include/bits/range_access.h
index e1b83bfcfca..adfe4509128 100644
--- a/libstdc++-v3/include/bits/range_access.h
+++ b/libstdc++-v3/include/bits/range_access.h
@@ -32,7 +32,7 @@
#pragma GCC system_header
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std _GLIBCXX_VISIBILITY(default)
{
@@ -100,6 +100,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_RANGE_ACCESS_H
diff --git a/libstdc++-v3/include/bits/stl_algo.h b/libstdc++-v3/include/bits/stl_algo.h
index f337e0c07a6..bd513b3b540 100644
--- a/libstdc++-v3/include/bits/stl_algo.h
+++ b/libstdc++-v3/include/bits/stl_algo.h
@@ -63,7 +63,7 @@
#include <bits/stl_heap.h>
#include <bits/stl_tempbuf.h> // for _Temporary_buffer
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <random> // for std::uniform_int_distribution
#include <functional> // for std::bind
#endif
@@ -737,7 +737,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__comp);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Checks that a predicate is true for all the elements
* of a sequence.
@@ -954,7 +954,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return __result;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Copy the elements of a sequence for which a predicate is true.
* @ingroup mutating_algorithms
@@ -3964,7 +3964,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return __result;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Determines whether the elements of a sequence are sorted.
* @ingroup sorting_algorithms
@@ -4413,7 +4413,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
#endif
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
_GLIBCXX_END_NAMESPACE_VERSION
@@ -5238,7 +5238,7 @@ _GLIBCXX_BEGIN_NAMESPACE_ALGO
template<typename _RandomAccessIterator, typename _RandomNumberGenerator>
void
random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last,
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_RandomNumberGenerator&& __rand)
#else
_RandomNumberGenerator& __rand)
diff --git a/libstdc++-v3/include/bits/stl_algobase.h b/libstdc++-v3/include/bits/stl_algobase.h
index fe30f6ce9f5..54636e53565 100644
--- a/libstdc++-v3/include/bits/stl_algobase.h
+++ b/libstdc++-v3/include/bits/stl_algobase.h
@@ -74,7 +74,7 @@ namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
// See http://gcc.gnu.org/ml/libstdc++/2004-08/msg00167.html: in a
// nutshell, we are partially implementing the resolution of DR 187,
// when it's safe, i.e., the value_types are equal.
@@ -125,7 +125,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__glibcxx_function_requires(_Mutable_ForwardIteratorConcept<
_ForwardIterator2>)
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
typedef typename iterator_traits<_ForwardIterator1>::value_type
_ValueType1;
typedef typename iterator_traits<_ForwardIterator2>::value_type
@@ -308,7 +308,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Category>
struct __copy_move<true, false, _Category>
{
@@ -341,7 +341,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<>
struct __copy_move<true, false, random_access_iterator_tag>
{
@@ -461,7 +461,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__result));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Moves the range [first,last) into result.
* @ingroup mutating_algorithms
@@ -511,7 +511,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Category>
struct __copy_move_backward<true, false, _Category>
{
@@ -540,7 +540,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<>
struct __copy_move_backward<true, false, random_access_iterator_tag>
{
@@ -632,7 +632,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__result));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Moves the range [first,last) into result.
* @ingroup mutating_algorithms
diff --git a/libstdc++-v3/include/bits/stl_bvector.h b/libstdc++-v3/include/bits/stl_bvector.h
index b8d3efbf651..92265cf23d9 100644
--- a/libstdc++-v3/include/bits/stl_bvector.h
+++ b/libstdc++-v3/include/bits/stl_bvector.h
@@ -57,7 +57,7 @@
#ifndef _STL_BVECTOR_H
#define _STL_BVECTOR_H 1
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -108,7 +108,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ *_M_p ^= _M_mask; }
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
inline void
swap(_Bit_reference __x, _Bit_reference __y) noexcept
{
@@ -421,7 +421,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
: _Bit_alloc_type(__a), _M_start(), _M_finish(), _M_end_of_storage(0)
{ }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_Bvector_impl(_Bit_alloc_type&& __a)
: _Bit_alloc_type(std::move(__a)), _M_start(), _M_finish(),
_M_end_of_storage(0)
@@ -450,7 +450,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_Bvector_base(const allocator_type& __a)
: _M_impl(__a) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_Bvector_base(_Bvector_base&& __x) noexcept
: _M_impl(std::move(__x._M_get_Bit_allocator()))
{
@@ -520,7 +520,7 @@ template<typename _Alloc>
{
typedef _Bvector_base<_Alloc> _Base;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename> friend class hash;
#endif
@@ -555,7 +555,7 @@ template<typename _Alloc>
vector(const allocator_type& __a)
: _Base(__a) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit
vector(size_type __n, const allocator_type& __a = allocator_type())
: vector(__n, false, __a)
@@ -588,7 +588,7 @@ template<typename _Alloc>
_M_copy_aligned(__x.begin(), __x.end(), this->_M_impl._M_start);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
vector(vector&& __x) noexcept
: _Base(std::move(__x)) { }
@@ -601,7 +601,7 @@ template<typename _Alloc>
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
vector(_InputIterator __first, _InputIterator __last,
@@ -636,7 +636,7 @@ template<typename _Alloc>
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
vector&
operator=(vector&& __x)
{
@@ -663,7 +663,7 @@ template<typename _Alloc>
assign(size_type __n, const bool& __x)
{ _M_fill_assign(__n, __x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
void
@@ -679,7 +679,7 @@ template<typename _Alloc>
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
assign(initializer_list<bool> __l)
{ this->assign(__l.begin(), __l.end()); }
@@ -717,7 +717,7 @@ template<typename _Alloc>
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return this->_M_impl._M_start; }
@@ -867,7 +867,7 @@ template<typename _Alloc>
return begin() + __n;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
void
@@ -889,7 +889,7 @@ template<typename _Alloc>
insert(iterator __position, size_type __n, const bool& __x)
{ _M_fill_insert(__position, __n, __x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void insert(iterator __p, initializer_list<bool> __l)
{ this->insert(__p, __l.begin(), __l.end()); }
#endif
@@ -924,7 +924,7 @@ template<typename _Alloc>
insert(end(), __new_size - size(), __x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
shrink_to_fit()
{ _M_shrink_to_fit(); }
@@ -966,7 +966,7 @@ template<typename _Alloc>
void
_M_reallocate(size_type __n);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
bool
_M_shrink_to_fit();
#endif
@@ -1130,7 +1130,7 @@ template<typename _Alloc>
_GLIBCXX_END_NAMESPACE_CONTAINER
} // namespace std
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <bits/functional_hash.h>
@@ -1151,6 +1151,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
}// namespace std
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif
diff --git a/libstdc++-v3/include/bits/stl_construct.h b/libstdc++-v3/include/bits/stl_construct.h
index 8aaaab80575..bb74a9cf464 100644
--- a/libstdc++-v3/include/bits/stl_construct.h
+++ b/libstdc++-v3/include/bits/stl_construct.h
@@ -70,7 +70,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* Constructs an object in existing memory by invoking an allocated
* object's constructor with an initializer.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _T1, typename... _Args>
inline void
_Construct(_T1* __p, _Args&&... __args)
diff --git a/libstdc++-v3/include/bits/stl_deque.h b/libstdc++-v3/include/bits/stl_deque.h
index 157df3ba30a..2a135463974 100644
--- a/libstdc++-v3/include/bits/stl_deque.h
+++ b/libstdc++-v3/include/bits/stl_deque.h
@@ -60,7 +60,7 @@
#include <bits/concept_check.h>
#include <bits/stl_iterator_base_types.h>
#include <bits/stl_iterator_base_funcs.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -392,7 +392,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
const _Tp&, const _Tp*>(__last),
__result); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp>
_Deque_iterator<_Tp, _Tp&, _Tp*>
move(_Deque_iterator<_Tp, const _Tp&, const _Tp*>,
@@ -465,7 +465,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
: _M_impl(__a)
{ }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_Deque_base(_Deque_base&& __x)
: _M_impl(std::move(__x._M_get_Tp_allocator()))
{
@@ -508,7 +508,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_start(), _M_finish()
{ }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_Deque_impl(_Tp_alloc_type&& __a)
: _Tp_alloc_type(std::move(__a)), _M_map(0), _M_map_size(0),
_M_start(), _M_finish()
@@ -791,7 +791,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
deque(const allocator_type& __a)
: _Base(__a, 0) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Creates a %deque with default constructed elements.
* @param __n The number of elements to initially create.
@@ -845,7 +845,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
this->_M_impl._M_start,
_M_get_Tp_allocator()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Deque move constructor.
* @param __x A %deque of identical element and allocator types.
@@ -891,7 +891,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* input iterators are used, then this will do at most 2N calls to the
* copy constructor, and logN memory reallocations.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
deque(_InputIterator __first, _InputIterator __last,
@@ -928,7 +928,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
deque&
operator=(const deque& __x);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Deque move assignment operator.
* @param __x A %deque of identical element and allocator types.
@@ -991,7 +991,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* resulting %deque's size is the same as the number of elements
* assigned. Old data may be lost.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
void
@@ -1007,7 +1007,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Assigns an initializer list to a %deque.
* @param __l An initializer_list.
@@ -1100,7 +1100,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(this->_M_impl._M_start); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read-only (constant) iterator that points to the first
* element in the %deque. Iteration is done in ordinary element order.
@@ -1148,7 +1148,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
max_size() const _GLIBCXX_NOEXCEPT
{ return _M_get_Tp_allocator().max_size(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Resizes the %deque to the specified number of elements.
* @param __new_size Number of elements the %deque should contain.
@@ -1214,7 +1214,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/** A non-binding request to reduce memory use. */
void
shrink_to_fit()
@@ -1368,7 +1368,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_push_front_aux(__x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push_front(value_type&& __x)
{ emplace_front(std::move(__x)); }
@@ -1400,7 +1400,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_push_back_aux(__x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push_back(value_type&& __x)
{ emplace_back(std::move(__x)); }
@@ -1452,7 +1452,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_pop_back_aux();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Inserts an object in %deque before specified iterator.
* @param __position An iterator into the %deque.
@@ -1479,7 +1479,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
iterator
insert(iterator __position, const value_type& __x);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Inserts given rvalue into %deque before specified iterator.
* @param __position An iterator into the %deque.
@@ -1530,7 +1530,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* [__first,__last) into the %deque before the location specified
* by @a __position. This is known as <em>range insert</em>.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
void
@@ -1680,7 +1680,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
void
_M_fill_initialize(const value_type& __value);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// called by deque(n).
void
_M_default_initialize();
@@ -1752,7 +1752,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
//@{
/// Helper functions for push_* and pop_*.
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
void _M_push_back_aux(const value_type&);
void _M_push_front_aux(const value_type&);
@@ -1813,7 +1813,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_fill_insert(iterator __pos, size_type __n, const value_type& __x);
// called by insert(p,x)
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
iterator
_M_insert_aux(iterator __pos, const value_type& __x);
#else
@@ -1874,7 +1874,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
this->_M_impl._M_finish = __pos;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// Called by resize(sz).
void
_M_default_append(size_type __n);
diff --git a/libstdc++-v3/include/bits/stl_function.h b/libstdc++-v3/include/bits/stl_function.h
index 42f5c1752b7..f94216bcd4d 100644
--- a/libstdc++-v3/include/bits/stl_function.h
+++ b/libstdc++-v3/include/bits/stl_function.h
@@ -496,7 +496,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator()(const _Pair& __x) const
{ return __x.first; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair2>
typename _Pair2::first_type&
operator()(_Pair2& __x) const
@@ -729,7 +729,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#if !defined(__GXX_EXPERIMENTAL_CXX0X__) || _GLIBCXX_USE_DEPRECATED
+#if (__cplusplus < 201103L) || _GLIBCXX_USE_DEPRECATED
# include <backward/binders.h>
#endif
diff --git a/libstdc++-v3/include/bits/stl_heap.h b/libstdc++-v3/include/bits/stl_heap.h
index f185610d9e0..191da90c92f 100644
--- a/libstdc++-v3/include/bits/stl_heap.h
+++ b/libstdc++-v3/include/bits/stl_heap.h
@@ -502,7 +502,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Search the end of a heap.
* @param __first Start of range.
diff --git a/libstdc++-v3/include/bits/stl_iterator.h b/libstdc++-v3/include/bits/stl_iterator.h
index 100d30e300a..14371bc8203 100644
--- a/libstdc++-v3/include/bits/stl_iterator.h
+++ b/libstdc++-v3/include/bits/stl_iterator.h
@@ -375,7 +375,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return !(__x < __y); }
template<typename _IteratorL, typename _IteratorR>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// DR 685.
inline auto
operator-(const reverse_iterator<_IteratorL>& __x,
@@ -426,7 +426,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* the end, if you like). Assigning a value to the %iterator will
* always append the value to the end of the container.
*/
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
back_insert_iterator&
operator=(typename _Container::const_reference __value)
{
@@ -516,7 +516,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* the front, if you like). Assigning a value to the %iterator will
* always prepend the value to the front of the container.
*/
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
front_insert_iterator&
operator=(typename _Container::const_reference __value)
{
@@ -627,7 +627,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* // vector v contains A, 1, 2, 3, and Z
* @endcode
*/
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
insert_iterator&
operator=(typename _Container::const_reference __value)
{
@@ -880,7 +880,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// operators but also operator- must accept mixed iterator/const_iterator
// parameters.
template<typename _IteratorL, typename _IteratorR, typename _Container>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// DR 685.
inline auto
operator-(const __normal_iterator<_IteratorL, _Container>& __lhs,
@@ -908,7 +908,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std _GLIBCXX_VISIBILITY(default)
{
@@ -1145,6 +1145,6 @@ _GLIBCXX_END_NAMESPACE_VERSION
#else
#define _GLIBCXX_MAKE_MOVE_ITERATOR(_Iter) (_Iter)
#define _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR(_Iter) (_Iter)
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif
diff --git a/libstdc++-v3/include/bits/stl_iterator_base_funcs.h b/libstdc++-v3/include/bits/stl_iterator_base_funcs.h
index 808f5d94c56..43313aed439 100644
--- a/libstdc++-v3/include/bits/stl_iterator_base_funcs.h
+++ b/libstdc++-v3/include/bits/stl_iterator_base_funcs.h
@@ -177,7 +177,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::__advance(__i, __d, std::__iterator_category(__i));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _ForwardIterator>
inline _ForwardIterator
@@ -197,7 +197,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return __x;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
diff --git a/libstdc++-v3/include/bits/stl_iterator_base_types.h b/libstdc++-v3/include/bits/stl_iterator_base_types.h
index 1f56c061df5..70e892c4f44 100644
--- a/libstdc++-v3/include/bits/stl_iterator_base_types.h
+++ b/libstdc++-v3/include/bits/stl_iterator_base_types.h
@@ -65,7 +65,7 @@
#include <bits/c++config.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# include <type_traits> // For _GLIBCXX_HAS_NESTED_TYPE, is_convertible
#endif
@@ -139,7 +139,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* argument. Specialized versions for pointers and pointers-to-const
* provide tighter, more correct semantics.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_GLIBCXX_HAS_NESTED_TYPE(iterator_category)
@@ -223,7 +223,7 @@ _GLIBCXX_HAS_NESTED_TYPE(iterator_category)
{ return __it.base(); }
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InIter>
using _RequireInputIter = typename
enable_if<is_convertible<typename
diff --git a/libstdc++-v3/include/bits/stl_list.h b/libstdc++-v3/include/bits/stl_list.h
index 5fdaec91d17..f67a091f192 100644
--- a/libstdc++-v3/include/bits/stl_list.h
+++ b/libstdc++-v3/include/bits/stl_list.h
@@ -58,7 +58,7 @@
#define _STL_LIST_H 1
#include <bits/concept_check.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -109,7 +109,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
///< User's data.
_Tp _M_data;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
_List_node(_Args&&... __args)
: __detail::_List_node_base(), _M_data(std::forward<_Args>(__args)...)
@@ -321,7 +321,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
: _Node_alloc_type(__a), _M_node()
{ }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_List_impl(_Node_alloc_type&& __a)
: _Node_alloc_type(std::move(__a)), _M_node()
{ }
@@ -365,7 +365,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
: _M_impl(__a)
{ _M_init(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_List_base(_List_base&& __x)
: _M_impl(std::move(__x._M_get_Node_allocator()))
{
@@ -478,7 +478,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Allocates space for a new node and constructs a copy of
* @a __args in it.
*/
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
_Node*
_M_create_node(const value_type& __x)
{
@@ -532,7 +532,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
list(const allocator_type& __a)
: _Base(_Node_alloc_type(__a)) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Creates a %list with default constructed elements.
* @param __n The number of elements to initially create.
@@ -584,7 +584,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
: _Base(__x._M_get_Node_allocator())
{ _M_initialize_dispatch(__x.begin(), __x.end(), __false_type()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %List move constructor.
* @param __x A %list of identical element and allocator types.
@@ -619,7 +619,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* [@a __first,@a __last). This is linear in N (where N is
* distance(@a __first,@a __last)).
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
list(_InputIterator __first, _InputIterator __last,
@@ -656,7 +656,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
list&
operator=(const list& __x);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %List move assignment operator.
* @param __x A %list of identical element and allocator types.
@@ -715,7 +715,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* that the resulting %list's size is the same as the number of
* elements assigned. Old data may be lost.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
void
@@ -732,7 +732,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Assigns an initializer_list to a %list.
* @param __l An initializer_list of value_type.
@@ -822,7 +822,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read-only (constant) iterator that points to the
* first element in the %list. Iteration is done in ordinary
@@ -879,7 +879,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
max_size() const _GLIBCXX_NOEXCEPT
{ return _M_get_Node_allocator().max_size(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Resizes the %list to the specified number of elements.
* @param __new_size Number of elements the %list should contain.
@@ -975,7 +975,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
push_front(const value_type& __x)
{ this->_M_insert(begin(), __x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push_front(value_type&& __x)
{ this->_M_insert(begin(), std::move(__x)); }
@@ -1016,7 +1016,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
push_back(const value_type& __x)
{ this->_M_insert(end(), __x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push_back(value_type&& __x)
{ this->_M_insert(end(), std::move(__x)); }
@@ -1042,7 +1042,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
pop_back()
{ this->_M_erase(iterator(this->_M_impl._M_node._M_prev)); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Constructs object in %list before specified iterator.
* @param __position A const_iterator into the %list.
@@ -1074,7 +1074,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
iterator
insert(iterator __position, const value_type& __x);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Inserts given rvalue into %list before specified iterator.
* @param __position An iterator into the %list.
@@ -1140,7 +1140,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* This operation is linear in the number of elements inserted and
* does not invalidate iterators and references.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -1245,7 +1245,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Requires this != @a __x.
*/
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
splice(iterator __position, list&& __x)
#else
splice(iterator __position, list& __x)
@@ -1259,7 +1259,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
splice(iterator __position, list& __x)
{ splice(__position, std::move(__x)); }
@@ -1275,7 +1275,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* inserts it into the current list before @a __position.
*/
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
splice(iterator __position, list&& __x, iterator __i)
#else
splice(iterator __position, list& __x, iterator __i)
@@ -1292,7 +1292,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
this->_M_transfer(__position, __i, __j);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
splice(iterator __position, list& __x, iterator __i)
{ splice(__position, std::move(__x), __i); }
@@ -1311,7 +1311,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Undefined if @a __position is in [__first,__last).
*/
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
splice(iterator __position, list&& __x, iterator __first,
iterator __last)
#else
@@ -1328,7 +1328,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
splice(iterator __position, list& __x, iterator __first, iterator __last)
{ splice(__position, std::move(__x), __first, __last); }
@@ -1401,7 +1401,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* sorted order, leaving @a __x empty when complete. Elements in
* this list precede elements in @a __x that are equal.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
merge(list&& __x);
@@ -1426,7 +1426,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* in this list precede elements in @a __x that are equivalent
* according to StrictWeakOrdering().
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _StrictWeakOrdering>
void
merge(list&& __x, _StrictWeakOrdering __comp);
@@ -1500,7 +1500,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
push_back(__x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// Called by list(n).
void
_M_default_initialize(size_type __n)
@@ -1543,7 +1543,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ __position._M_node->_M_transfer(__first._M_node, __last._M_node); }
// Inserts new element at position given and with value given.
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
void
_M_insert(iterator __position, const value_type& __x)
{
@@ -1566,7 +1566,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{
__position._M_node->_M_unhook();
_Node* __n = static_cast<_Node*>(__position._M_node);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_M_get_Node_allocator().destroy(__n);
#else
_M_get_Tp_allocator().destroy(std::__addressof(__n->_M_data));
diff --git a/libstdc++-v3/include/bits/stl_map.h b/libstdc++-v3/include/bits/stl_map.h
index 14f44579a4f..365728b5aba 100644
--- a/libstdc++-v3/include/bits/stl_map.h
+++ b/libstdc++-v3/include/bits/stl_map.h
@@ -59,7 +59,7 @@
#include <bits/functexcept.h>
#include <bits/concept_check.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#include <tuple>
#endif
@@ -181,7 +181,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
map(const map& __x)
: _M_t(__x._M_t) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Map move constructor.
* @param __x A %map of identical element and allocator types.
@@ -268,7 +268,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Map move assignment operator.
* @param __x A %map of identical element and allocator types.
@@ -384,7 +384,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
rend() const _GLIBCXX_NOEXCEPT
{ return _M_t.rend(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read-only (constant) iterator that points to the first pair
* in the %map. Iteration is done in ascending order according to the
@@ -462,7 +462,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
iterator __i = lower_bound(__k);
// __i->first is greater than or equivalent to __k.
if (__i == end() || key_comp()(__k, (*__i).first))
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
__i = _M_t._M_emplace_hint_unique(__i, std::piecewise_construct,
std::tuple<const key_type&>(__k),
std::tuple<>());
@@ -472,7 +472,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return (*__i).second;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
mapped_type&
operator[](key_type&& __k)
{
@@ -517,7 +517,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
// modifiers
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Attempts to build and insert a std::pair into the %map.
*
@@ -595,7 +595,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
insert(const value_type& __x)
{ return _M_t._M_insert_unique(__x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -604,7 +604,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ return _M_t._M_insert_unique(std::forward<_Pair>(__x)); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Attempts to insert a list of std::pairs into the %map.
* @param __list A std::initializer_list<value_type> of pairs to be
@@ -641,14 +641,14 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Insertion requires logarithmic time (if the hint is not taken).
*/
iterator
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
insert(const_iterator __position, const value_type& __x)
#else
insert(iterator __position, const value_type& __x)
#endif
{ return _M_t._M_insert_unique_(__position, __x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -671,7 +671,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
insert(_InputIterator __first, _InputIterator __last)
{ _M_t._M_insert_unique(__first, __last); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 130. Associative erase should return an iterator.
/**
@@ -726,7 +726,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
erase(const key_type& __x)
{ return _M_t.erase(__x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 130. Associative erase should return an iterator.
/**
diff --git a/libstdc++-v3/include/bits/stl_multimap.h b/libstdc++-v3/include/bits/stl_multimap.h
index a0fb27e2192..1c6a7b25388 100644
--- a/libstdc++-v3/include/bits/stl_multimap.h
+++ b/libstdc++-v3/include/bits/stl_multimap.h
@@ -58,7 +58,7 @@
#define _STL_MULTIMAP_H 1
#include <bits/concept_check.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -178,7 +178,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
multimap(const multimap& __x)
: _M_t(__x._M_t) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Multimap move constructor.
* @param __x A %multimap of identical element and allocator types.
@@ -262,7 +262,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Multimap move assignment operator.
* @param __x A %multimap of identical element and allocator types.
@@ -378,7 +378,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
rend() const _GLIBCXX_NOEXCEPT
{ return _M_t.rend(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read-only (constant) iterator that points to the first pair
* in the %multimap. Iteration is done in ascending order according to
@@ -433,7 +433,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ return _M_t.max_size(); }
// modifiers
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Build and insert a std::pair into the %multimap.
*
@@ -502,7 +502,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
insert(const value_type& __x)
{ return _M_t._M_insert_equal(__x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -532,14 +532,14 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Insertion requires logarithmic time (if the hint is not taken).
*/
iterator
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
insert(const_iterator __position, const value_type& __x)
#else
insert(iterator __position, const value_type& __x)
#endif
{ return _M_t._M_insert_equal_(__position, __x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -563,7 +563,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
insert(_InputIterator __first, _InputIterator __last)
{ _M_t._M_insert_equal(__first, __last); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Attempts to insert a list of std::pairs into the %multimap.
* @param __l A std::initializer_list<value_type> of pairs to be
@@ -576,7 +576,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ this->insert(__l.begin(), __l.end()); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 130. Associative erase should return an iterator.
/**
@@ -631,7 +631,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
erase(const key_type& __x)
{ return _M_t.erase(__x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 130. Associative erase should return an iterator.
/**
diff --git a/libstdc++-v3/include/bits/stl_multiset.h b/libstdc++-v3/include/bits/stl_multiset.h
index 2448742356a..4ac650a7ca2 100644
--- a/libstdc++-v3/include/bits/stl_multiset.h
+++ b/libstdc++-v3/include/bits/stl_multiset.h
@@ -58,7 +58,7 @@
#define _STL_MULTISET_H 1
#include <bits/concept_check.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -190,7 +190,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
multiset(const multiset& __x)
: _M_t(__x._M_t) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Multiset move constructor.
* @param __x A %multiset of identical element and allocator types.
@@ -233,7 +233,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Multiset move assignment operator.
* @param __x A %multiset of identical element and allocator types.
@@ -323,7 +323,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
rend() const _GLIBCXX_NOEXCEPT
{ return _M_t.rend(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read-only (constant) iterator that points to the first
* element in the %multiset. Iteration is done in ascending order
@@ -392,7 +392,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ _M_t.swap(__x._M_t); }
// insert/erase
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Builds and inserts an element into the %multiset.
* @param __args Arguments used to generate the element instance to be
@@ -455,7 +455,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
insert(const value_type& __x)
{ return _M_t._M_insert_equal(__x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(value_type&& __x)
{ return _M_t._M_insert_equal(std::move(__x)); }
@@ -485,7 +485,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
insert(const_iterator __position, const value_type& __x)
{ return _M_t._M_insert_equal_(__position, __x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(const_iterator __position, value_type&& __x)
{ return _M_t._M_insert_equal_(__position, std::move(__x)); }
@@ -504,7 +504,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
insert(_InputIterator __first, _InputIterator __last)
{ _M_t._M_insert_equal(__first, __last); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Attempts to insert a list of elements into the %multiset.
* @param __l A std::initializer_list<value_type> of elements
@@ -517,7 +517,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ this->insert(__l.begin(), __l.end()); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 130. Associative erase should return an iterator.
/**
@@ -567,7 +567,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
erase(const key_type& __x)
{ return _M_t.erase(__x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 130. Associative erase should return an iterator.
/**
diff --git a/libstdc++-v3/include/bits/stl_numeric.h b/libstdc++-v3/include/bits/stl_numeric.h
index 3b97d63601b..4fb726cc3aa 100644
--- a/libstdc++-v3/include/bits/stl_numeric.h
+++ b/libstdc++-v3/include/bits/stl_numeric.h
@@ -61,7 +61,7 @@
#include <debug/debug.h>
#include <bits/move.h> // For _GLIBCXX_MOVE
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std _GLIBCXX_VISIBILITY(default)
{
diff --git a/libstdc++-v3/include/bits/stl_pair.h b/libstdc++-v3/include/bits/stl_pair.h
index 4ece92aac12..70da3da7392 100644
--- a/libstdc++-v3/include/bits/stl_pair.h
+++ b/libstdc++-v3/include/bits/stl_pair.h
@@ -60,7 +60,7 @@
#include <bits/move.h> // for std::move / std::forward, and std::swap
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <type_traits> // for std::__decay_and_strip too
#endif
@@ -68,7 +68,7 @@ namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/// piecewise_construct_t
struct piecewise_construct_t { };
@@ -110,7 +110,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
: first(__a), second(__b) { }
/** There is also a templated copy ctor for the @c pair class itself. */
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
template<class _U1, class _U2>
pair(const pair<_U1, _U2>& __p)
: first(__p.first), second(__p.second) { }
@@ -242,7 +242,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator>=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
{ return !(__x < __y); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/// See std::pair::swap().
// Note: no std::swap overloads in C++03 mode, this has performance
// implications, see, eg, libstdc++/38466.
@@ -265,7 +265,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
*/
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// 181. make_pair() unintended behavior
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// NB: DR 706.
template<class _T1, class _T2>
constexpr pair<typename __decay_and_strip<_T1>::__type,
diff --git a/libstdc++-v3/include/bits/stl_queue.h b/libstdc++-v3/include/bits/stl_queue.h
index 82ab85e8b48..add519c8883 100644
--- a/libstdc++-v3/include/bits/stl_queue.h
+++ b/libstdc++-v3/include/bits/stl_queue.h
@@ -131,7 +131,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/**
* @brief Default constructor creates no elements.
*/
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
explicit
queue(const _Sequence& __c = _Sequence())
: c(__c) { }
@@ -214,7 +214,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
push(const value_type& __x)
{ c.push_back(__x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push(value_type&& __x)
{ c.push_back(std::move(__x)); }
@@ -243,7 +243,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
c.pop_front();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
swap(queue& __q)
noexcept(noexcept(swap(c, __q.c)))
@@ -312,7 +312,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator>=(const queue<_Tp, _Seq>& __x, const queue<_Tp, _Seq>& __y)
{ return !(__x < __y); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Seq>
inline void
swap(queue<_Tp, _Seq>& __x, queue<_Tp, _Seq>& __y)
@@ -393,7 +393,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/**
* @brief Default constructor creates no elements.
*/
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
explicit
priority_queue(const _Compare& __x = _Compare(),
const _Sequence& __s = _Sequence())
@@ -428,7 +428,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* documentation on @link functors functor base
* classes@endlink.
*/
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
template<typename _InputIterator>
priority_queue(_InputIterator __first, _InputIterator __last,
const _Compare& __x = _Compare(),
@@ -501,7 +501,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::push_heap(c.begin(), c.end(), comp);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push(value_type&& __x)
{
@@ -537,7 +537,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
c.pop_back();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
swap(priority_queue& __pq)
noexcept(noexcept(swap(c, __pq.c)) && noexcept(swap(comp, __pq.comp)))
@@ -551,7 +551,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// No equality/comparison operators are provided for priority_queue.
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Sequence, typename _Compare>
inline void
swap(priority_queue<_Tp, _Sequence, _Compare>& __x,
diff --git a/libstdc++-v3/include/bits/stl_set.h b/libstdc++-v3/include/bits/stl_set.h
index c3c187086d6..1850aac7f87 100644
--- a/libstdc++-v3/include/bits/stl_set.h
+++ b/libstdc++-v3/include/bits/stl_set.h
@@ -58,7 +58,7 @@
#define _STL_SET_H 1
#include <bits/concept_check.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -194,7 +194,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
set(const set& __x)
: _M_t(__x._M_t) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Set move constructor
* @param __x A %set of identical element and allocator types.
@@ -237,7 +237,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Set move assignment operator.
* @param __x A %set of identical element and allocator types.
@@ -326,7 +326,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
rend() const _GLIBCXX_NOEXCEPT
{ return _M_t.rend(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read-only (constant) iterator that points to the first
* element in the %set. Iteration is done in ascending order according
@@ -395,7 +395,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ _M_t.swap(__x._M_t); }
// insert/erase
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Attempts to build and insert an element into the %set.
* @param __args Arguments used to generate an element.
@@ -465,7 +465,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return std::pair<iterator, bool>(__p.first, __p.second);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
std::pair<iterator, bool>
insert(value_type&& __x)
{
@@ -498,7 +498,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
insert(const_iterator __position, const value_type& __x)
{ return _M_t._M_insert_unique_(__position, __x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(const_iterator __position, value_type&& __x)
{ return _M_t._M_insert_unique_(__position, std::move(__x)); }
@@ -518,7 +518,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
insert(_InputIterator __first, _InputIterator __last)
{ _M_t._M_insert_unique(__first, __last); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Attempts to insert a list of elements into the %set.
* @param __l A std::initializer_list<value_type> of elements
@@ -531,7 +531,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ this->insert(__l.begin(), __l.end()); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 130. Associative erase should return an iterator.
/**
@@ -581,7 +581,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
erase(const key_type& __x)
{ return _M_t.erase(__x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 130. Associative erase should return an iterator.
/**
diff --git a/libstdc++-v3/include/bits/stl_stack.h b/libstdc++-v3/include/bits/stl_stack.h
index 4f61bfbbdf6..88ca8ca5845 100644
--- a/libstdc++-v3/include/bits/stl_stack.h
+++ b/libstdc++-v3/include/bits/stl_stack.h
@@ -127,7 +127,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/**
* @brief Default constructor creates no elements.
*/
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
explicit
stack(const _Sequence& __c = _Sequence())
: c(__c) { }
@@ -188,7 +188,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
push(const value_type& __x)
{ c.push_back(__x); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push(value_type&& __x)
{ c.push_back(std::move(__x)); }
@@ -217,7 +217,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
c.pop_back();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
swap(stack& __s)
noexcept(noexcept(swap(c, __s.c)))
@@ -287,7 +287,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator>=(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y)
{ return !(__x < __y); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Seq>
inline void
swap(stack<_Tp, _Seq>& __x, stack<_Tp, _Seq>& __y)
diff --git a/libstdc++-v3/include/bits/stl_tree.h b/libstdc++-v3/include/bits/stl_tree.h
index f2adb962c29..03a5e307c58 100644
--- a/libstdc++-v3/include/bits/stl_tree.h
+++ b/libstdc++-v3/include/bits/stl_tree.h
@@ -132,7 +132,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typedef _Rb_tree_node<_Val>* _Link_type;
_Val _M_value_field;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
_Rb_tree_node(_Args&&... __args)
: _Rb_tree_node_base(),
@@ -372,7 +372,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_M_put_node(_Link_type __p)
{ _M_impl._Node_allocator::deallocate(__p, 1); }
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
_Link_type
_M_create_node(const value_type& __x)
{
@@ -450,7 +450,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_M_node_count(0)
{ _M_initialize(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_Rb_tree_impl(const _Key_compare& __comp, _Node_allocator&& __a)
: _Node_allocator(std::move(__a)), _M_key_compare(__comp),
_M_header(), _M_node_count(0)
@@ -584,7 +584,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_M_get_insert_hint_equal_pos(const_iterator __pos,
const key_type& __k);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Arg>
iterator
_M_insert_(_Base_ptr __x, _Base_ptr __y, _Arg&& __v);
@@ -661,7 +661,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_Rb_tree(_Rb_tree&& __x);
#endif
@@ -733,7 +733,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
swap(_Rb_tree& __t);
// Insert/erase.
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Arg>
pair<iterator, bool>
_M_insert_unique(_Arg&& __x);
@@ -795,7 +795,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_M_erase_aux(const_iterator __first, const_iterator __last);
public:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 130. Associative erase should return an iterator.
iterator
@@ -828,7 +828,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
size_type
erase(const key_type& __x);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 130. Associative erase should return an iterator.
iterator
@@ -951,7 +951,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
{ __x.swap(__y); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
@@ -1000,12 +1000,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Arg>
#endif
typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_M_insert_(_Base_ptr __x, _Base_ptr __p, _Arg&& __v)
#else
_M_insert_(_Base_ptr __x, _Base_ptr __p, const _Val& __v)
@@ -1025,12 +1025,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Arg>
#endif
typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_M_insert_lower(_Base_ptr __p, _Arg&& __v)
#else
_M_insert_lower(_Base_ptr __p, const _Val& __v)
@@ -1050,12 +1050,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Arg>
#endif
typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_M_insert_equal_lower(_Arg&& __v)
#else
_M_insert_equal_lower(const _Val& __v)
@@ -1355,13 +1355,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Arg>
#endif
pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
_Compare, _Alloc>::iterator, bool>
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_M_insert_unique(_Arg&& __v)
#else
_M_insert_unique(const _Val& __v)
@@ -1381,12 +1381,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Arg>
#endif
typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_M_insert_equal(_Arg&& __v)
#else
_M_insert_equal(const _Val& __v)
@@ -1458,12 +1458,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Arg>
#endif
typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_M_insert_unique_(const_iterator __position, _Arg&& __v)
#else
_M_insert_unique_(const_iterator __position, const _Val& __v)
@@ -1535,12 +1535,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Arg>
#endif
typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_M_insert_equal_(const_iterator __position, _Arg&& __v)
#else
_M_insert_equal_(const_iterator __position, const _Val& __v)
@@ -1556,7 +1556,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return _M_insert_equal_lower(_GLIBCXX_FORWARD(_Arg, __v));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Key, typename _Val, typename _KeyOfValue,
typename _Compare, typename _Alloc>
typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
diff --git a/libstdc++-v3/include/bits/stl_uninitialized.h b/libstdc++-v3/include/bits/stl_uninitialized.h
index 0d20335d214..b133489d8c5 100644
--- a/libstdc++-v3/include/bits/stl_uninitialized.h
+++ b/libstdc++-v3/include/bits/stl_uninitialized.h
@@ -444,7 +444,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// Extensions: __uninitialized_default, __uninitialized_default_n,
// __uninitialized_default_a, __uninitialized_default_n_a.
diff --git a/libstdc++-v3/include/bits/stl_vector.h b/libstdc++-v3/include/bits/stl_vector.h
index 1f14f7eda7e..b309fd3f605 100644
--- a/libstdc++-v3/include/bits/stl_vector.h
+++ b/libstdc++-v3/include/bits/stl_vector.h
@@ -60,7 +60,7 @@
#include <bits/stl_iterator_base_funcs.h>
#include <bits/functexcept.h>
#include <bits/concept_check.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -92,7 +92,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
: _Tp_alloc_type(__a), _M_start(0), _M_finish(0), _M_end_of_storage(0)
{ }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_Vector_impl(_Tp_alloc_type&& __a)
: _Tp_alloc_type(std::move(__a)),
_M_start(0), _M_finish(0), _M_end_of_storage(0)
@@ -136,7 +136,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
: _M_impl(__a)
{ _M_create_storage(__n); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_Vector_base(_Tp_alloc_type&& __a)
: _M_impl(std::move(__a)) { }
@@ -257,7 +257,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
vector(const allocator_type& __a)
: _Base(__a) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Creates a %vector with default constructed elements.
* @param __n The number of elements to initially create.
@@ -317,7 +317,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_get_Tp_allocator());
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Vector move constructor.
* @param __x A %vector of identical element and allocator types.
@@ -387,7 +387,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* used, then this will do at most 2N calls to the copy
* constructor, and logN memory reallocations.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
vector(_InputIterator __first, _InputIterator __last,
@@ -427,7 +427,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
vector&
operator=(const vector& __x);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief %Vector move assignment operator.
* @param __x A %vector of identical element and allocator types.
@@ -492,7 +492,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* that the resulting %vector's size is the same as the number
* of elements assigned. Old data may be lost.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
void
@@ -509,7 +509,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Assigns an initializer list to a %vector.
* @param __l An initializer_list.
@@ -602,7 +602,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read-only (constant) iterator that points to the
* first element in the %vector. Iteration is done in ordinary
@@ -651,7 +651,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
max_size() const _GLIBCXX_NOEXCEPT
{ return _Alloc_traits::max_size(_M_get_Tp_allocator()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Resizes the %vector to the specified number of elements.
* @param __new_size Number of elements the %vector should contain.
@@ -711,7 +711,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/** A non-binding request to reduce capacity() to size(). */
void
shrink_to_fit()
@@ -871,7 +871,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* Returns a pointer such that [data(), data() + size()) is a valid
* range. For a non-empty %vector, data() == &front().
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_Tp*
#else
pointer
@@ -879,7 +879,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
data() _GLIBCXX_NOEXCEPT
{ return std::__addressof(front()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const _Tp*
#else
const_pointer
@@ -908,14 +908,14 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
++this->_M_impl._M_finish;
}
else
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_M_emplace_back_aux(__x);
#else
_M_insert_aux(end(), __x);
#endif
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push_back(value_type&& __x)
{ emplace_back(std::move(__x)); }
@@ -941,7 +941,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_Alloc_traits::destroy(this->_M_impl, this->_M_impl._M_finish);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Inserts an object in %vector before specified iterator.
* @param __position An iterator into the %vector.
@@ -973,7 +973,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
iterator
insert(iterator __position, const value_type& __x);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Inserts given rvalue into %vector before specified iterator.
* @param __position An iterator into the %vector.
@@ -1038,7 +1038,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* %vector and if it is frequently used the user should
* consider using std::list.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
void
@@ -1107,7 +1107,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
*/
void
swap(vector& __x)
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
noexcept(_Alloc_traits::_S_nothrow_swap())
#endif
{
@@ -1213,7 +1213,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
this->_M_impl._M_finish = this->_M_impl._M_end_of_storage;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// Called by the vector(n) constructor.
void
_M_default_initialize(size_type __n)
@@ -1305,7 +1305,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
void
_M_fill_insert(iterator __pos, size_type __n, const value_type& __x);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// Called by resize(n).
void
_M_default_append(size_type __n);
@@ -1315,7 +1315,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
#endif
// Called by insert(p,x)
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
void
_M_insert_aux(iterator __position, const value_type& __x);
#else
@@ -1350,7 +1350,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
this->_M_impl._M_finish = __pos;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
private:
// Constant-time move assignment when source object's memory can be
// moved, either because the source's allocator will move too
diff --git a/libstdc++-v3/include/bits/streambuf_iterator.h b/libstdc++-v3/include/bits/streambuf_iterator.h
index 3c8014e89fa..524bae55234 100644
--- a/libstdc++-v3/include/bits/streambuf_iterator.h
+++ b/libstdc++-v3/include/bits/streambuf_iterator.h
@@ -52,7 +52,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
class istreambuf_iterator
: public iterator<input_iterator_tag, _CharT, typename _Traits::off_type,
_CharT*,
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// LWG 445.
_CharT>
#else
@@ -104,7 +104,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_CONSTEXPR istreambuf_iterator() _GLIBCXX_USE_NOEXCEPT
: _M_sbuf(0), _M_c(traits_type::eof()) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
istreambuf_iterator(const istreambuf_iterator&) noexcept = default;
~istreambuf_iterator() = default;
diff --git a/libstdc++-v3/include/bits/stringfwd.h b/libstdc++-v3/include/bits/stringfwd.h
index 5f2d49c5579..623aa88b592 100644
--- a/libstdc++-v3/include/bits/stringfwd.h
+++ b/libstdc++-v3/include/bits/stringfwd.h
@@ -70,7 +70,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typedef basic_string<wchar_t> wstring; /// A string of @c wchar_t
#endif
-#if (defined(__GXX_EXPERIMENTAL_CXX0X__) \
+#if ((__cplusplus >= 201103L) \
&& defined(_GLIBCXX_USE_C99_STDINT_TR1))
template<> struct char_traits<char16_t>;
diff --git a/libstdc++-v3/include/bits/uses_allocator.h b/libstdc++-v3/include/bits/uses_allocator.h
index 49b5409c15a..a1e091c604c 100644
--- a/libstdc++-v3/include/bits/uses_allocator.h
+++ b/libstdc++-v3/include/bits/uses_allocator.h
@@ -25,7 +25,7 @@
#ifndef _USES_ALLOCATOR_H
#define _USES_ALLOCATOR_H 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
diff --git a/libstdc++-v3/include/bits/vector.tcc b/libstdc++-v3/include/bits/vector.tcc
index d9c3b659e6b..cc464cea841 100644
--- a/libstdc++-v3/include/bits/vector.tcc
+++ b/libstdc++-v3/include/bits/vector.tcc
@@ -85,7 +85,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Alloc>
template<typename... _Args>
void
@@ -117,7 +117,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
else
{
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage)
{
_Tp __x_copy = __x;
@@ -163,7 +163,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{
if (&__x != this)
{
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
if (_Alloc_traits::_S_propagate_on_copy_assign())
{
if (!_Alloc_traits::_S_always_equal()
@@ -285,7 +285,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Alloc>
template<typename... _Args>
typename vector<_Tp, _Alloc>::iterator
@@ -323,13 +323,13 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_GLIBCXX_MOVE(*(this->_M_impl._M_finish
- 1)));
++this->_M_impl._M_finish;
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
_Tp __x_copy = __x;
#endif
_GLIBCXX_MOVE_BACKWARD3(__position.base(),
this->_M_impl._M_finish - 2,
this->_M_impl._M_finish - 1);
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
*__position = __x_copy;
#else
*__position = _Tp(std::forward<_Args>(__args)...);
@@ -350,7 +350,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
// taking the element by const lvalue ref (see 23.1/13).
_Alloc_traits::construct(this->_M_impl,
__new_start + __elems_before,
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
std::forward<_Args>(__args)...);
#else
__x);
@@ -390,7 +390,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Alloc>
template<typename... _Args>
void
@@ -524,7 +524,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Alloc>
void
vector<_Tp, _Alloc>::
@@ -788,7 +788,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Alloc>
bool
vector<bool, _Alloc>::
@@ -809,7 +809,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_GLIBCXX_END_NAMESPACE_CONTAINER
} // namespace std
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std _GLIBCXX_VISIBILITY(default)
{
@@ -851,6 +851,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace std
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif /* _VECTOR_TCC */
diff --git a/libstdc++-v3/include/c_compatibility/complex.h b/libstdc++-v3/include/c_compatibility/complex.h
index 1e2acafc7c2..a4452368030 100644
--- a/libstdc++-v3/include/c_compatibility/complex.h
+++ b/libstdc++-v3/include/c_compatibility/complex.h
@@ -28,7 +28,7 @@
#include <bits/c++config.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# include <ccomplex>
#endif
diff --git a/libstdc++-v3/include/c_compatibility/fenv.h b/libstdc++-v3/include/c_compatibility/fenv.h
index 2096e393cc7..fdc82a9998c 100644
--- a/libstdc++-v3/include/c_compatibility/fenv.h
+++ b/libstdc++-v3/include/c_compatibility/fenv.h
@@ -36,7 +36,7 @@
# include_next <fenv.h>
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#if _GLIBCXX_USE_C99_FENV_TR1
@@ -76,6 +76,6 @@ namespace std
#endif // _GLIBCXX_USE_C99_FENV_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_FENV_H
diff --git a/libstdc++-v3/include/c_compatibility/inttypes.h b/libstdc++-v3/include/c_compatibility/inttypes.h
index 54c220c2f68..d0f84079489 100644
--- a/libstdc++-v3/include/c_compatibility/inttypes.h
+++ b/libstdc++-v3/include/c_compatibility/inttypes.h
@@ -33,7 +33,7 @@
#include <bits/c++config.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// For 8.11.1/1 (see C99, Note 184)
# if _GLIBCXX_HAVE_INTTYPES_H
@@ -86,6 +86,6 @@ namespace std
# include_next <inttypes.h>
# endif
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_INTTYPES_H
diff --git a/libstdc++-v3/include/c_compatibility/stdbool.h b/libstdc++-v3/include/c_compatibility/stdbool.h
index 27485d99db9..f7a5b4cf70d 100644
--- a/libstdc++-v3/include/c_compatibility/stdbool.h
+++ b/libstdc++-v3/include/c_compatibility/stdbool.h
@@ -28,7 +28,7 @@
#include <bits/c++config.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# include <cstdbool>
#else
# if _GLIBCXX_HAVE_STDBOOL_H
diff --git a/libstdc++-v3/include/c_compatibility/stdint.h b/libstdc++-v3/include/c_compatibility/stdint.h
index 32538c6c82b..b9f47fe2228 100644
--- a/libstdc++-v3/include/c_compatibility/stdint.h
+++ b/libstdc++-v3/include/c_compatibility/stdint.h
@@ -33,7 +33,7 @@
#include <bits/c++config.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// For 8.22.1/1 (see C99, Notes 219, 220, 222)
# if _GLIBCXX_HAVE_STDINT_H
@@ -105,6 +105,6 @@ namespace std
# include_next <stdint.h>
# endif
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_STDINT_H
diff --git a/libstdc++-v3/include/c_compatibility/tgmath.h b/libstdc++-v3/include/c_compatibility/tgmath.h
index 3d84d37a919..10330f58205 100644
--- a/libstdc++-v3/include/c_compatibility/tgmath.h
+++ b/libstdc++-v3/include/c_compatibility/tgmath.h
@@ -28,7 +28,7 @@
#include <bits/c++config.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# include <ctgmath>
#else
# if _GLIBCXX_HAVE_TGMATH_H
diff --git a/libstdc++-v3/include/c_global/ccomplex b/libstdc++-v3/include/c_global/ccomplex
index 0109ec10e9a..f9aeaed47ef 100644
--- a/libstdc++-v3/include/c_global/ccomplex
+++ b/libstdc++-v3/include/c_global/ccomplex
@@ -31,7 +31,7 @@
#ifndef _GLIBCXX_CCOMPLEX
#define _GLIBCXX_CCOMPLEX 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#endif
diff --git a/libstdc++-v3/include/c_global/cctype b/libstdc++-v3/include/c_global/cctype
index 0fed691ecef..e0b73626963 100644
--- a/libstdc++-v3/include/c_global/cctype
+++ b/libstdc++-v3/include/c_global/cctype
@@ -78,7 +78,7 @@ namespace std
using ::toupper;
} // namespace std
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#ifdef _GLIBCXX_USE_C99_CTYPE_TR1
@@ -91,6 +91,6 @@ namespace std
#endif // _GLIBCXX_USE_C99_CTYPE_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif
diff --git a/libstdc++-v3/include/c_global/cfenv b/libstdc++-v3/include/c_global/cfenv
index 35010a0ba20..37b8eca8b09 100644
--- a/libstdc++-v3/include/c_global/cfenv
+++ b/libstdc++-v3/include/c_global/cfenv
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -79,6 +79,6 @@ namespace std
#endif // _GLIBCXX_USE_C99_FENV_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_CFENV
diff --git a/libstdc++-v3/include/c_global/cfloat b/libstdc++-v3/include/c_global/cfloat
index 2bc7883bfed..065ae19d6e6 100644
--- a/libstdc++-v3/include/c_global/cfloat
+++ b/libstdc++-v3/include/c_global/cfloat
@@ -43,7 +43,7 @@
#ifndef _GLIBCXX_CFLOAT
#define _GLIBCXX_CFLOAT 1
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# ifndef DECIMAL_DIG
# define DECIMAL_DIG __DECIMAL_DIG__
# endif
diff --git a/libstdc++-v3/include/c_global/cinttypes b/libstdc++-v3/include/c_global/cinttypes
index 030962bdf32..ce2fe720d7c 100644
--- a/libstdc++-v3/include/c_global/cinttypes
+++ b/libstdc++-v3/include/c_global/cinttypes
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -76,6 +76,6 @@ namespace std
#endif // _GLIBCXX_USE_C99_INTTYPES_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_CINTTYPES
diff --git a/libstdc++-v3/include/c_global/cmath b/libstdc++-v3/include/c_global/cmath
index d488c7740ec..90f76650520 100644
--- a/libstdc++-v3/include/c_global/cmath
+++ b/libstdc++-v3/include/c_global/cmath
@@ -413,7 +413,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
pow(long double __x, long double __y)
{ return __builtin_powl(__x, __y); }
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 550. What should the return type of pow(float,int) be?
inline double
@@ -558,7 +558,7 @@ namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
constexpr int
fpclassify(float __x)
{ return __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL,
@@ -921,7 +921,7 @@ _GLIBCXX_END_NAMESPACE_VERSION
#endif /* _GLIBCXX_USE_C99_FP_MACROS_DYNAMIC */
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#ifdef _GLIBCXX_USE_C99_MATH_TR1
@@ -1682,6 +1682,6 @@ _GLIBCXX_END_NAMESPACE_VERSION
#endif // _GLIBCXX_USE_C99_MATH_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif
diff --git a/libstdc++-v3/include/c_global/cstdalign b/libstdc++-v3/include/c_global/cstdalign
index 31f0c1b384e..353382757f2 100644
--- a/libstdc++-v3/include/c_global/cstdalign
+++ b/libstdc++-v3/include/c_global/cstdalign
@@ -31,7 +31,7 @@
#ifndef _GLIBCXX_CSTDALIGN
#define _GLIBCXX_CSTDALIGN 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
# include <bits/c++config.h>
diff --git a/libstdc++-v3/include/c_global/cstdbool b/libstdc++-v3/include/c_global/cstdbool
index dd428f2d288..fbc03f81276 100644
--- a/libstdc++-v3/include/c_global/cstdbool
+++ b/libstdc++-v3/include/c_global/cstdbool
@@ -31,7 +31,7 @@
#ifndef _GLIBCXX_CSTDBOOL
#define _GLIBCXX_CSTDBOOL 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
# include <bits/c++config.h>
diff --git a/libstdc++-v3/include/c_global/cstdint b/libstdc++-v3/include/c_global/cstdint
index 5ebee3bd793..d61d383a6bb 100644
--- a/libstdc++-v3/include/c_global/cstdint
+++ b/libstdc++-v3/include/c_global/cstdint
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -84,6 +84,6 @@ namespace std
#endif // _GLIBCXX_USE_C99_STDINT_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_CSTDINT
diff --git a/libstdc++-v3/include/c_global/ctgmath b/libstdc++-v3/include/c_global/ctgmath
index 6b51005cc11..13eee2a4200 100644
--- a/libstdc++-v3/include/c_global/ctgmath
+++ b/libstdc++-v3/include/c_global/ctgmath
@@ -31,7 +31,7 @@
#ifndef _GLIBCXX_CTGMATH
#define _GLIBCXX_CTGMATH 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
# include <cmath>
diff --git a/libstdc++-v3/include/c_global/cwchar b/libstdc++-v3/include/c_global/cwchar
index a2b1168f9a0..8ed424e3cfc 100644
--- a/libstdc++-v3/include/c_global/cwchar
+++ b/libstdc++-v3/include/c_global/cwchar
@@ -272,7 +272,7 @@ namespace std
#endif //_GLIBCXX_USE_WCHAR_T
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#ifdef _GLIBCXX_USE_WCHAR_T
@@ -300,6 +300,6 @@ namespace std
#endif // _GLIBCXX_USE_WCHAR_T
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif
diff --git a/libstdc++-v3/include/debug/bitset b/libstdc++-v3/include/debug/bitset
index 3d865c1c1c2..0ad8283d8fe 100644
--- a/libstdc++-v3/include/debug/bitset
+++ b/libstdc++-v3/include/debug/bitset
@@ -42,7 +42,7 @@ namespace __debug
template<size_t _Nb>
class bitset
: public _GLIBCXX_STD_C::bitset<_Nb>
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
, public __gnu_debug::_Safe_sequence_base
#endif
{
@@ -52,7 +52,7 @@ namespace __debug
// In C++0x we rely on normal reference type to preserve the property
// of bitset to be use as a literal.
// TODO: Find another solution.
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
typedef typename _Base::reference reference;
#else
// bit reference:
@@ -133,7 +133,7 @@ namespace __debug
_GLIBCXX_CONSTEXPR bitset() _GLIBCXX_NOEXCEPT
: _Base() { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
constexpr bitset(unsigned long long __val) noexcept
#else
bitset(unsigned long __val)
@@ -162,7 +162,7 @@ namespace __debug
bitset(const _Base& __x) : _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _CharT>
explicit
bitset(const _CharT* __str,
@@ -263,7 +263,7 @@ namespace __debug
operator[](size_t __pos)
{
__glibcxx_check_subscript(__pos);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
return _M_base()[__pos];
#else
return reference(_M_base()[__pos], this);
@@ -275,7 +275,7 @@ namespace __debug
_GLIBCXX_CONSTEXPR bool
operator[](size_t __pos) const
{
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
// TODO: Check in debug-mode too.
__glibcxx_check_subscript(__pos);
#endif
@@ -283,7 +283,7 @@ namespace __debug
}
using _Base::to_ulong;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using _Base::to_ullong;
#endif
@@ -409,7 +409,7 @@ namespace __debug
} // namespace __debug
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// DR 1182.
/// std::hash specialization for bitset.
template<size_t _Nb>
diff --git a/libstdc++-v3/include/debug/deque b/libstdc++-v3/include/debug/deque
index 1ce416c180c..1445b7c047d 100644
--- a/libstdc++-v3/include/debug/deque
+++ b/libstdc++-v3/include/debug/deque
@@ -74,7 +74,7 @@ namespace __debug
deque(const _Allocator& __a = _Allocator())
: _Base(__a) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit
deque(size_type __n)
: _Base(__n) { }
@@ -89,7 +89,7 @@ namespace __debug
: _Base(__n, __value, __a) { }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -108,7 +108,7 @@ namespace __debug
deque(const _Base& __x)
: _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
deque(deque&& __x)
: _Base(std::move(__x))
{ this->_M_swap(__x); }
@@ -128,7 +128,7 @@ namespace __debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
deque&
operator=(deque&& __x)
{
@@ -149,7 +149,7 @@ namespace __debug
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -171,7 +171,7 @@ namespace __debug
this->_M_invalidate_all();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
assign(initializer_list<value_type> __l)
{
@@ -215,7 +215,7 @@ namespace __debug
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); }
@@ -246,7 +246,7 @@ namespace __debug
using _Base::size;
using _Base::max_size;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
resize(size_type __sz)
{
@@ -287,7 +287,7 @@ namespace __debug
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
shrink_to_fit()
{
@@ -358,7 +358,7 @@ namespace __debug
this->_M_invalidate_all();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push_front(_Tp&& __x)
{ emplace_front(std::move(__x)); }
@@ -404,7 +404,7 @@ namespace __debug
return iterator(__res, this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(iterator __position, _Tp&& __x)
{ return emplace(__position, std::move(__x)); }
@@ -425,7 +425,7 @@ namespace __debug
this->_M_invalidate_all();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
diff --git a/libstdc++-v3/include/debug/list b/libstdc++-v3/include/debug/list
index df2031dd603..d9cfca404d8 100644
--- a/libstdc++-v3/include/debug/list
+++ b/libstdc++-v3/include/debug/list
@@ -75,7 +75,7 @@ namespace __debug
list(const _Allocator& __a = _Allocator())
: _Base(__a) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit
list(size_type __n)
: _Base(__n) { }
@@ -90,7 +90,7 @@ namespace __debug
: _Base(__n, __value, __a) { }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -109,7 +109,7 @@ namespace __debug
list(const _Base& __x)
: _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
list(list&& __x) noexcept
: _Base(std::move(__x))
{ this->_M_swap(__x); }
@@ -129,7 +129,7 @@ namespace __debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
list&
operator=(list&& __x)
{
@@ -157,7 +157,7 @@ namespace __debug
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -214,7 +214,7 @@ namespace __debug
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); }
@@ -237,7 +237,7 @@ namespace __debug
using _Base::size;
using _Base::max_size;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
resize(size_type __sz)
{
@@ -352,7 +352,7 @@ namespace __debug
// 23.2.2.3 modifiers:
using _Base::push_front;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using _Base::emplace_front;
#endif
@@ -366,7 +366,7 @@ namespace __debug
using _Base::push_back;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using _Base::emplace_back;
#endif
@@ -378,7 +378,7 @@ namespace __debug
_Base::pop_back();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
iterator
emplace(iterator __position, _Args&&... __args)
@@ -396,7 +396,7 @@ namespace __debug
return iterator(_Base::insert(__position.base(), __x), this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(iterator __position, _Tp&& __x)
{ return emplace(__position, std::move(__x)); }
@@ -416,7 +416,7 @@ namespace __debug
_Base::insert(__position.base(), __n, __x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -480,7 +480,7 @@ namespace __debug
// 23.2.2.4 list operations:
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
splice(iterator __position, list&& __x)
#else
splice(iterator __position, list& __x)
@@ -493,14 +493,14 @@ namespace __debug
_Base::splice(__position.base(), _GLIBCXX_MOVE(__x._M_base()));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
splice(iterator __position, list& __x)
{ splice(__position, std::move(__x)); }
#endif
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
splice(iterator __position, list&& __x, iterator __i)
#else
splice(iterator __position, list& __x, iterator __i)
@@ -525,14 +525,14 @@ namespace __debug
__i.base());
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
splice(iterator __position, list& __x, iterator __i)
{ splice(__position, std::move(__x), __i); }
#endif
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
splice(iterator __position, list&& __x, iterator __first,
iterator __last)
#else
@@ -571,7 +571,7 @@ namespace __debug
__first.base(), __last.base());
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
splice(iterator __position, list& __x, iterator __first, iterator __last)
{ splice(__position, std::move(__x), __first, __last); }
@@ -638,7 +638,7 @@ namespace __debug
}
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
merge(list&& __x)
#else
merge(list& __x)
@@ -655,7 +655,7 @@ namespace __debug
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
merge(list& __x)
{ merge(std::move(__x)); }
@@ -663,7 +663,7 @@ namespace __debug
template<class _Compare>
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
merge(list&& __x, _Compare __comp)
#else
merge(list& __x, _Compare __comp)
@@ -682,7 +682,7 @@ namespace __debug
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Compare>
void
merge(list& __x, _Compare __comp)
diff --git a/libstdc++-v3/include/debug/map.h b/libstdc++-v3/include/debug/map.h
index 254988c2c64..900b702e57f 100644
--- a/libstdc++-v3/include/debug/map.h
+++ b/libstdc++-v3/include/debug/map.h
@@ -92,7 +92,7 @@ namespace __debug
map(const _Base& __x)
: _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
map(map&& __x)
noexcept(is_nothrow_copy_constructible<_Compare>::value)
: _Base(std::move(__x))
@@ -114,7 +114,7 @@ namespace __debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
map&
operator=(map&& __x)
{
@@ -172,7 +172,7 @@ namespace __debug
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); }
@@ -203,7 +203,7 @@ namespace __debug
using _Base::at;
// modifiers:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
std::pair<iterator, bool>
emplace(_Args&&... __args)
@@ -232,7 +232,7 @@ namespace __debug
__res.second);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -246,14 +246,14 @@ namespace __debug
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
insert(std::initializer_list<value_type> __list)
{ _Base::insert(__list); }
#endif
iterator
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
insert(const_iterator __position, const value_type& __x)
#else
insert(iterator __position, const value_type& __x)
@@ -263,7 +263,7 @@ namespace __debug
return iterator(_Base::insert(__position.base(), __x), this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -285,7 +285,7 @@ namespace __debug
__gnu_debug::__base(__last));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __position)
{
@@ -321,7 +321,7 @@ namespace __debug
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __first, const_iterator __last)
{
diff --git a/libstdc++-v3/include/debug/multimap.h b/libstdc++-v3/include/debug/multimap.h
index e46a7427345..1bac1539798 100644
--- a/libstdc++-v3/include/debug/multimap.h
+++ b/libstdc++-v3/include/debug/multimap.h
@@ -93,7 +93,7 @@ namespace __debug
multimap(const _Base& __x)
: _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
multimap(multimap&& __x)
noexcept(is_nothrow_copy_constructible<_Compare>::value)
: _Base(std::move(__x))
@@ -115,7 +115,7 @@ namespace __debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
multimap&
operator=(multimap&& __x)
{
@@ -171,7 +171,7 @@ namespace __debug
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); }
@@ -195,7 +195,7 @@ namespace __debug
using _Base::max_size;
// modifiers:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
iterator
emplace(_Args&&... __args)
@@ -218,7 +218,7 @@ namespace __debug
insert(const value_type& __x)
{ return iterator(_Base::insert(__x), this); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -227,14 +227,14 @@ namespace __debug
{ return iterator(_Base::insert(std::forward<_Pair>(__x)), this); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
insert(std::initializer_list<value_type> __list)
{ _Base::insert(__list); }
#endif
iterator
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
insert(const_iterator __position, const value_type& __x)
#else
insert(iterator __position, const value_type& __x)
@@ -244,7 +244,7 @@ namespace __debug
return iterator(_Base::insert(__position.base(), __x), this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -266,7 +266,7 @@ namespace __debug
__gnu_debug::__base(__last));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __position)
{
@@ -304,7 +304,7 @@ namespace __debug
return __count;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __first, const_iterator __last)
{
diff --git a/libstdc++-v3/include/debug/multiset.h b/libstdc++-v3/include/debug/multiset.h
index 04598464abd..9850c444f7d 100644
--- a/libstdc++-v3/include/debug/multiset.h
+++ b/libstdc++-v3/include/debug/multiset.h
@@ -92,7 +92,7 @@ namespace __debug
multiset(const _Base& __x)
: _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
multiset(multiset&& __x)
noexcept(is_nothrow_copy_constructible<_Compare>::value)
: _Base(std::move(__x))
@@ -114,7 +114,7 @@ namespace __debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
multiset&
operator=(multiset&& __x)
{
@@ -170,7 +170,7 @@ namespace __debug
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); }
@@ -194,7 +194,7 @@ namespace __debug
using _Base::max_size;
// modifiers:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
iterator
emplace(_Args&&... __args)
@@ -217,7 +217,7 @@ namespace __debug
insert(const value_type& __x)
{ return iterator(_Base::insert(__x), this); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(value_type&& __x)
{ return iterator(_Base::insert(std::move(__x)), this); }
@@ -230,7 +230,7 @@ namespace __debug
return iterator(_Base::insert(__position.base(), __x), this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(const_iterator __position, value_type&& __x)
{
@@ -249,13 +249,13 @@ namespace __debug
__gnu_debug::__base(__last));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
insert(initializer_list<value_type> __l)
{ _Base::insert(__l); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __position)
{
@@ -289,7 +289,7 @@ namespace __debug
return __count;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __first, const_iterator __last)
{
diff --git a/libstdc++-v3/include/debug/safe_iterator.h b/libstdc++-v3/include/debug/safe_iterator.h
index 68f55cd974e..637fe2d195a 100644
--- a/libstdc++-v3/include/debug/safe_iterator.h
+++ b/libstdc++-v3/include/debug/safe_iterator.h
@@ -172,7 +172,7 @@ namespace __gnu_debug
._M_iterator(__x, "other"));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Move construction.
* @post __x is singular and unattached
@@ -229,7 +229,7 @@ namespace __gnu_debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Move assignment.
* @post __x is singular and unattached
diff --git a/libstdc++-v3/include/debug/set.h b/libstdc++-v3/include/debug/set.h
index 44cbe941732..d7d590caa23 100644
--- a/libstdc++-v3/include/debug/set.h
+++ b/libstdc++-v3/include/debug/set.h
@@ -92,7 +92,7 @@ namespace __debug
set(const _Base& __x)
: _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
set(set&& __x)
noexcept(is_nothrow_copy_constructible<_Compare>::value)
: _Base(std::move(__x))
@@ -114,7 +114,7 @@ namespace __debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
set&
operator=(set&& __x)
{
@@ -170,7 +170,7 @@ namespace __debug
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); }
@@ -194,7 +194,7 @@ namespace __debug
using _Base::max_size;
// modifiers:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
std::pair<iterator, bool>
emplace(_Args&&... __args)
@@ -223,7 +223,7 @@ namespace __debug
__res.second);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
std::pair<iterator, bool>
insert(value_type&& __x)
{
@@ -241,7 +241,7 @@ namespace __debug
return iterator(_Base::insert(__position.base(), __x), this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(const_iterator __position, value_type&& __x)
{
@@ -260,13 +260,13 @@ namespace __debug
__gnu_debug::__base(__last));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
insert(initializer_list<value_type> __l)
{ _Base::insert(__l); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __position)
{
@@ -298,7 +298,7 @@ namespace __debug
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __first, const_iterator __last)
{
diff --git a/libstdc++-v3/include/debug/string b/libstdc++-v3/include/debug/string
index 954a7ddf684..4c51aa1ca94 100644
--- a/libstdc++-v3/include/debug/string
+++ b/libstdc++-v3/include/debug/string
@@ -113,7 +113,7 @@ namespace __gnu_debug
__gnu_debug::__base(__end), __a)
{ }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
basic_string(basic_string&& __str) noexcept
: _Base(std::move(__str))
{ }
@@ -122,7 +122,7 @@ namespace __gnu_debug
const _Allocator& __a = _Allocator())
: _Base(__l, __a)
{ }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
~basic_string() _GLIBCXX_NOEXCEPT { }
@@ -151,7 +151,7 @@ namespace __gnu_debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
basic_string&
operator=(basic_string&& __str)
{
@@ -168,7 +168,7 @@ namespace __gnu_debug
this->_M_invalidate_all();
return *this;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
// 21.3.2 iterators:
iterator
@@ -203,7 +203,7 @@ namespace __gnu_debug
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); }
@@ -237,7 +237,7 @@ namespace __gnu_debug
resize(size_type __n)
{ this->resize(__n, _CharT()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
shrink_to_fit()
{
@@ -296,7 +296,7 @@ namespace __gnu_debug
using _Base::at;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using _Base::front;
using _Base::back;
#endif
@@ -327,7 +327,7 @@ namespace __gnu_debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
basic_string&
operator+=(std::initializer_list<_CharT> __l)
{
@@ -335,7 +335,7 @@ namespace __gnu_debug
this->_M_invalidate_all();
return *this;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
basic_string&
append(const basic_string& __str)
@@ -407,7 +407,7 @@ namespace __gnu_debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
basic_string&
assign(basic_string&& __x)
{
@@ -415,7 +415,7 @@ namespace __gnu_debug
this->_M_invalidate_all();
return *this;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
basic_string&
assign(const basic_string& __str, size_type __pos, size_type __n)
@@ -462,7 +462,7 @@ namespace __gnu_debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
basic_string&
assign(std::initializer_list<_CharT> __l)
{
@@ -470,7 +470,7 @@ namespace __gnu_debug
this->_M_invalidate_all();
return *this;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
basic_string&
insert(size_type __pos1, const basic_string& __str)
@@ -542,7 +542,7 @@ namespace __gnu_debug
this->_M_invalidate_all();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
insert(iterator __p, std::initializer_list<_CharT> __l)
{
@@ -550,7 +550,7 @@ namespace __gnu_debug
_Base::insert(__p.base(), __l);
this->_M_invalidate_all();
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
basic_string&
erase(size_type __pos = 0, size_type __n = _Base::npos)
@@ -581,7 +581,7 @@ namespace __gnu_debug
return iterator(__res, this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
pop_back()
{
@@ -589,7 +589,7 @@ namespace __gnu_debug
_Base::pop_back();
this->_M_invalidate_all();
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
basic_string&
replace(size_type __pos1, size_type __n1, const basic_string& __str)
@@ -685,7 +685,7 @@ namespace __gnu_debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
basic_string& replace(iterator __i1, iterator __i2,
std::initializer_list<_CharT> __l)
{
@@ -694,7 +694,7 @@ namespace __gnu_debug
this->_M_invalidate_all();
return *this;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
size_type
copy(_CharT* __s, size_type __n, size_type __pos = 0) const
diff --git a/libstdc++-v3/include/debug/unordered_map b/libstdc++-v3/include/debug/unordered_map
index 16cf1768e42..1c99ac842b6 100644
--- a/libstdc++-v3/include/debug/unordered_map
+++ b/libstdc++-v3/include/debug/unordered_map
@@ -30,7 +30,7 @@
#ifndef _GLIBCXX_DEBUG_UNORDERED_MAP
#define _GLIBCXX_DEBUG_UNORDERED_MAP 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
# include <unordered_map>
@@ -941,6 +941,6 @@ namespace __debug
} // namespace __debug
} // namespace std
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif
diff --git a/libstdc++-v3/include/debug/unordered_set b/libstdc++-v3/include/debug/unordered_set
index 8cae0c9c222..d270ecc96d3 100644
--- a/libstdc++-v3/include/debug/unordered_set
+++ b/libstdc++-v3/include/debug/unordered_set
@@ -30,7 +30,7 @@
#ifndef _GLIBCXX_DEBUG_UNORDERED_SET
#define _GLIBCXX_DEBUG_UNORDERED_SET 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
# include <unordered_set>
@@ -923,6 +923,6 @@ namespace __debug
} // namespace __debug
} // namespace std
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif
diff --git a/libstdc++-v3/include/debug/vector b/libstdc++-v3/include/debug/vector
index fe65bab0c7a..9166a073691 100644
--- a/libstdc++-v3/include/debug/vector
+++ b/libstdc++-v3/include/debug/vector
@@ -53,7 +53,7 @@ namespace __debug
typedef typename _Base::const_iterator _Base_const_iterator;
typedef __gnu_debug::_Equal_to<_Base_const_iterator> _Equal;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
typedef __gnu_cxx::__alloc_traits<_Allocator> _Alloc_traits;
#endif
@@ -81,7 +81,7 @@ namespace __debug
vector(const _Allocator& __a = _Allocator())
: _Base(__a), _M_guaranteed_capacity(0) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit
vector(size_type __n, const _Allocator& __a = _Allocator())
: _Base(__n, __a), _M_guaranteed_capacity(__n) { }
@@ -96,7 +96,7 @@ namespace __debug
: _Base(__n, __value, __a), _M_guaranteed_capacity(__n) { }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -117,7 +117,7 @@ namespace __debug
vector(const _Base& __x)
: _Base(__x), _M_guaranteed_capacity(__x.size()) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
vector(vector&& __x) noexcept
: _Base(std::move(__x)),
_M_guaranteed_capacity(this->size())
@@ -154,7 +154,7 @@ namespace __debug
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
vector&
operator=(vector&& __x) noexcept(_Alloc_traits::_S_nothrow_move())
{
@@ -177,7 +177,7 @@ namespace __debug
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -201,7 +201,7 @@ namespace __debug
_M_update_guaranteed_capacity();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
assign(initializer_list<value_type> __l)
{
@@ -246,7 +246,7 @@ namespace __debug
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); }
@@ -268,7 +268,7 @@ namespace __debug
using _Base::size;
using _Base::max_size;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
resize(size_type __sz)
{
@@ -306,7 +306,7 @@ namespace __debug
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
shrink_to_fit()
{
@@ -401,7 +401,7 @@ namespace __debug
_M_update_guaranteed_capacity();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Up = _Tp>
typename __gnu_cxx::__enable_if<!std::__are_same<_Up, bool>::__value,
void>::__type
@@ -428,7 +428,7 @@ namespace __debug
_Base::pop_back();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
iterator
emplace(iterator __position, _Args&&... __args)
@@ -462,7 +462,7 @@ namespace __debug
return iterator(__res, this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Up = _Tp>
typename __gnu_cxx::__enable_if<!std::__are_same<_Up, bool>::__value,
iterator>::__type
@@ -488,7 +488,7 @@ namespace __debug
_M_update_guaranteed_capacity();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -546,11 +546,11 @@ namespace __debug
void
swap(vector& __x)
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
noexcept(_Alloc_traits::_S_nothrow_swap())
#endif
{
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
if (!_Alloc_traits::_S_propagate_on_swap())
__glibcxx_check_equal_allocs(__x);
#endif
@@ -638,7 +638,7 @@ namespace __debug
} // namespace __debug
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// DR 1182.
/// std::hash specialization for vector<bool>.
template<typename _Alloc>
diff --git a/libstdc++-v3/include/ext/algorithm b/libstdc++-v3/include/ext/algorithm
index e9a48dbd0cb..0713416d1ce 100644
--- a/libstdc++-v3/include/ext/algorithm
+++ b/libstdc++-v3/include/ext/algorithm
@@ -427,7 +427,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__out_last - __out_first);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using std::is_heap;
#else
/**
@@ -471,7 +471,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using std::is_sorted;
#else
// is_sorted, a predicated testing whether a range is sorted in
@@ -529,7 +529,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return false;
return true;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Find the median of three values.
diff --git a/libstdc++-v3/include/ext/alloc_traits.h b/libstdc++-v3/include/ext/alloc_traits.h
index b66f818a37a..3ae04acfbc2 100644
--- a/libstdc++-v3/include/ext/alloc_traits.h
+++ b/libstdc++-v3/include/ext/alloc_traits.h
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# include <bits/alloc_traits.h>
#else
# include <bits/allocator.h> // for __alloc_swap
@@ -48,7 +48,7 @@ namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Alloc>
struct __allocator_always_compares_equal
{ static const bool value = false; };
@@ -107,12 +107,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
*/
template<typename _Alloc>
struct __alloc_traits
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
: std::allocator_traits<_Alloc>
#endif
{
typedef _Alloc allocator_type;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
typedef std::allocator_traits<_Alloc> _Base_type;
typedef typename _Base_type::value_type value_type;
typedef typename _Base_type::pointer pointer;
diff --git a/libstdc++-v3/include/ext/array_allocator.h b/libstdc++-v3/include/ext/array_allocator.h
index 2c9666a7248..47f52b50424 100644
--- a/libstdc++-v3/include/ext/array_allocator.h
+++ b/libstdc++-v3/include/ext/array_allocator.h
@@ -74,7 +74,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
max_size() const _GLIBCXX_USE_NOEXCEPT
{ return size_t(-1) / sizeof(_Tp); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Up, typename... _Args>
void
construct(_Up* __p, _Args&&... __args)
diff --git a/libstdc++-v3/include/ext/bitmap_allocator.h b/libstdc++-v3/include/ext/bitmap_allocator.h
index cb6fc38f71c..9e815610e7f 100644
--- a/libstdc++-v3/include/ext/bitmap_allocator.h
+++ b/libstdc++-v3/include/ext/bitmap_allocator.h
@@ -1050,7 +1050,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
max_size() const _GLIBCXX_USE_NOEXCEPT
{ return size_type(-1) / sizeof(value_type); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Up, typename... _Args>
void
construct(_Up* __p, _Args&&... __args)
diff --git a/libstdc++-v3/include/ext/extptr_allocator.h b/libstdc++-v3/include/ext/extptr_allocator.h
index 21b1282dbc1..1166831a651 100644
--- a/libstdc++-v3/include/ext/extptr_allocator.h
+++ b/libstdc++-v3/include/ext/extptr_allocator.h
@@ -101,7 +101,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
size_type max_size() const _GLIBCXX_USE_NOEXCEPT
{ return __numeric_traits<size_type>::__max / sizeof(_Tp); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Up, typename... _Args>
void
construct(_Up* __p, _Args&&... __args)
diff --git a/libstdc++-v3/include/ext/malloc_allocator.h b/libstdc++-v3/include/ext/malloc_allocator.h
index 49007233993..c1901849288 100644
--- a/libstdc++-v3/include/ext/malloc_allocator.h
+++ b/libstdc++-v3/include/ext/malloc_allocator.h
@@ -108,7 +108,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
max_size() const _GLIBCXX_USE_NOEXCEPT
{ return size_t(-1) / sizeof(_Tp); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Up, typename... _Args>
void
construct(_Up* __p, _Args&&... __args)
diff --git a/libstdc++-v3/include/ext/mt_allocator.h b/libstdc++-v3/include/ext/mt_allocator.h
index 069476bafe7..1ce695a3f82 100644
--- a/libstdc++-v3/include/ext/mt_allocator.h
+++ b/libstdc++-v3/include/ext/mt_allocator.h
@@ -588,7 +588,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
max_size() const _GLIBCXX_USE_NOEXCEPT
{ return size_t(-1) / sizeof(_Tp); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Up, typename... _Args>
void
construct(_Up* __p, _Args&&... __args)
diff --git a/libstdc++-v3/include/ext/new_allocator.h b/libstdc++-v3/include/ext/new_allocator.h
index 1e4069df922..0e8add16f15 100644
--- a/libstdc++-v3/include/ext/new_allocator.h
+++ b/libstdc++-v3/include/ext/new_allocator.h
@@ -105,7 +105,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
max_size() const _GLIBCXX_USE_NOEXCEPT
{ return size_t(-1) / sizeof(_Tp); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Up, typename... _Args>
void
construct(_Up* __p, _Args&&... __args)
diff --git a/libstdc++-v3/include/ext/numeric b/libstdc++-v3/include/ext/numeric
index b389177f374..d869302e6a1 100644
--- a/libstdc++-v3/include/ext/numeric
+++ b/libstdc++-v3/include/ext/numeric
@@ -123,7 +123,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
power(_Tp __x, _Integer __n)
{ return __power(__x, __n); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using std::iota;
#else
/**
@@ -144,7 +144,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
while (__first != __last)
*__first++ = __value++;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
diff --git a/libstdc++-v3/include/ext/pb_ds/detail/type_utils.hpp b/libstdc++-v3/include/ext/pb_ds/detail/type_utils.hpp
index 79899857b0d..1e9106caeed 100644
--- a/libstdc++-v3/include/ext/pb_ds/detail/type_utils.hpp
+++ b/libstdc++-v3/include/ext/pb_ds/detail/type_utils.hpp
@@ -132,7 +132,7 @@ namespace __gnu_pbds
};
// Use C++0x's static_assert if possible.
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#define PB_DS_STATIC_ASSERT(UNIQUE, E) static_assert(E, #UNIQUE)
#else
template<bool>
diff --git a/libstdc++-v3/include/ext/pointer.h b/libstdc++-v3/include/ext/pointer.h
index 8b33740f25b..5592a77b3e1 100644
--- a/libstdc++-v3/include/ext/pointer.h
+++ b/libstdc++-v3/include/ext/pointer.h
@@ -42,7 +42,7 @@
#include <bits/stl_iterator_base_types.h>
#include <ext/cast.h>
#include <ext/type_traits.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# include <bits/ptr_traits.h>
#endif
@@ -562,7 +562,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
diff --git a/libstdc++-v3/include/ext/pool_allocator.h b/libstdc++-v3/include/ext/pool_allocator.h
index 03d167ca231..bb340ab9f5c 100644
--- a/libstdc++-v3/include/ext/pool_allocator.h
+++ b/libstdc++-v3/include/ext/pool_allocator.h
@@ -161,7 +161,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
max_size() const _GLIBCXX_USE_NOEXCEPT
{ return size_t(-1) / sizeof(_Tp); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Up, typename... _Args>
void
construct(_Up* __p, _Args&&... __args)
diff --git a/libstdc++-v3/include/ext/random b/libstdc++-v3/include/ext/random
index 79ee5994a3a..1ab58f69ab3 100644
--- a/libstdc++-v3/include/ext/random
+++ b/libstdc++-v3/include/ext/random
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -2330,6 +2330,6 @@ _GLIBCXX_END_NAMESPACE_VERSION
#endif // _GLIBCXX_USE_C99_STDINT_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _EXT_RANDOM
diff --git a/libstdc++-v3/include/ext/rc_string_base.h b/libstdc++-v3/include/ext/rc_string_base.h
index afd4d9e3688..0145ccc5116 100644
--- a/libstdc++-v3/include/ext/rc_string_base.h
+++ b/libstdc++-v3/include/ext/rc_string_base.h
@@ -314,7 +314,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__rc_string_base(const __rc_string_base& __rcs);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
__rc_string_base(__rc_string_base&& __rcs)
: _M_dataplus(__rcs._M_dataplus)
{ __rcs._M_data(_S_empty_rep._M_refcopy()); }
diff --git a/libstdc++-v3/include/ext/sso_string_base.h b/libstdc++-v3/include/ext/sso_string_base.h
index ccaf419e15c..bfc6902a2eb 100644
--- a/libstdc++-v3/include/ext/sso_string_base.h
+++ b/libstdc++-v3/include/ext/sso_string_base.h
@@ -183,7 +183,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__sso_string_base(const __sso_string_base& __rcs);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
__sso_string_base(__sso_string_base&& __rcs);
#endif
@@ -344,7 +344,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
: _M_dataplus(__rcs._M_get_allocator(), _M_local_data)
{ _M_construct(__rcs._M_data(), __rcs._M_data() + __rcs._M_length()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _CharT, typename _Traits, typename _Alloc>
__sso_string_base<_CharT, _Traits, _Alloc>::
__sso_string_base(__sso_string_base&& __rcs)
diff --git a/libstdc++-v3/include/ext/throw_allocator.h b/libstdc++-v3/include/ext/throw_allocator.h
index 0dbd3512b35..c525b48b77d 100644
--- a/libstdc++-v3/include/ext/throw_allocator.h
+++ b/libstdc++-v3/include/ext/throw_allocator.h
@@ -55,7 +55,7 @@
#include <utility>
#include <bits/functexcept.h>
#include <bits/move.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# include <functional>
# include <random>
#else
@@ -385,7 +385,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ engine().seed(__s); }
private:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
typedef std::uniform_real_distribution<double> distribution_type;
typedef std::mt19937 engine_type;
#else
@@ -396,7 +396,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static double
generate()
{
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const distribution_type distribution(0, 1);
static auto generator = std::bind(distribution, engine());
#else
@@ -459,7 +459,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
throw_value_base(const throw_value_base& __v) : _M_i(__v._M_i)
{ throw_conditionally(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// Shall not throw.
throw_value_base(throw_value_base&&) = default;
#endif
@@ -476,7 +476,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// Shall not throw.
throw_value_base&
operator=(throw_value_base&&) = default;
@@ -571,7 +571,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
throw_value_limit(const throw_value_limit& __other)
: base_type(__other._M_i) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
throw_value_limit(throw_value_limit&&) = default;
#endif
@@ -585,7 +585,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
throw_value_limit&
operator=(throw_value_limit&&) = default;
#endif
@@ -602,7 +602,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
throw_value_random(const throw_value_random& __other)
: base_type(__other._M_i) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
throw_value_random(throw_value_random&&) = default;
#endif
@@ -616,7 +616,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
throw_value_random&
operator=(throw_value_random&&) = default;
#endif
@@ -675,7 +675,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return a;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Up, typename... _Args>
void
construct(_Up* __p, _Args&&... __args)
@@ -771,7 +771,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# include <bits/functional_hash.h>
diff --git a/libstdc++-v3/include/ext/vstring.h b/libstdc++-v3/include/ext/vstring.h
index 48e3d461eef..7e2612e46ad 100644
--- a/libstdc++-v3/include/ext/vstring.h
+++ b/libstdc++-v3/include/ext/vstring.h
@@ -32,7 +32,7 @@
#pragma GCC system_header
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -150,7 +150,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__versa_string(const __versa_string& __str)
: __vstring_base(__str) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief String move constructor.
* @param __str Source string.
@@ -238,7 +238,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @param __end End of range.
* @param __a Allocator to use (default is default allocator).
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -261,7 +261,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator=(const __versa_string& __str)
{ return this->assign(__str); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief String move assignment operator.
* @param __str Source string.
@@ -386,7 +386,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(this->begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read-only (constant) iterator that points to the first
* character in the %string.
@@ -468,7 +468,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
resize(size_type __n)
{ this->resize(__n, _CharT()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/// A non-binding request to reduce capacity() to size().
void
shrink_to_fit()
@@ -604,7 +604,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return this->_M_data()[__n];
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Returns a read/write reference to the data at the first
* element of the %string.
@@ -669,7 +669,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Append an initializer_list of characters.
* @param __l The initializer_list of characters to be appended.
@@ -678,7 +678,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__versa_string&
operator+=(std::initializer_list<_CharT> __l)
{ return this->append(__l.begin(), __l.end()); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Append a string to this string.
@@ -748,7 +748,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
append(size_type __n, _CharT __c)
{ return _M_replace_aux(this->size(), size_type(0), __n, __c); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Append an initializer_list of characters.
* @param __l The initializer_list of characters to append.
@@ -757,7 +757,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__versa_string&
append(std::initializer_list<_CharT> __l)
{ return this->append(__l.begin(), __l.end()); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Append a range of characters.
@@ -767,7 +767,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
*
* Appends characters in the range [first,last) to this string.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -803,7 +803,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Set value to contents of another string.
* @param __str Source string to use.
@@ -818,7 +818,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
this->swap(__str);
return *this;
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Set value to a substring of a string.
@@ -896,7 +896,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* Sets value of string to characters in the range
* [first,last).
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -906,7 +906,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
assign(_InputIterator __first, _InputIterator __last)
{ return this->replace(_M_ibegin(), _M_iend(), __first, __last); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Set value to an initializer_list of characters.
* @param __l The initializer_list of characters to assign.
@@ -915,7 +915,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__versa_string&
assign(std::initializer_list<_CharT> __l)
{ return this->assign(__l.begin(), __l.end()); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Insert multiple characters.
@@ -946,7 +946,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* thrown. The value of the string doesn't change if an error
* is thrown.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -956,7 +956,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
insert(iterator __p, _InputIterator __beg, _InputIterator __end)
{ this->replace(__p, __p, __beg, __end); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Insert an initializer_list of characters.
* @param __p Iterator referencing location in string to insert at.
@@ -966,7 +966,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
void
insert(iterator __p, std::initializer_list<_CharT> __l)
{ this->insert(__p, __l.begin(), __l.end()); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Insert value of a string.
@@ -1160,7 +1160,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return iterator(this->_M_data() + __pos);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Remove the last character.
*
@@ -1169,7 +1169,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
void
pop_back()
{ this->_M_erase(size()-1, 1); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
/**
* @brief Replace characters with value from another string.
@@ -1387,7 +1387,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* of result exceeds max_size(), length_error is thrown. The
* value of the string doesn't change if an error is thrown.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
__versa_string&
@@ -1458,7 +1458,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__k1.base(), __k2 - __k1);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Replace range of characters with initializer_list.
* @param __i1 Iterator referencing start of range to replace.
@@ -1475,7 +1475,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__versa_string& replace(iterator __i1, iterator __i2,
std::initializer_list<_CharT> __l)
{ return this->replace(__i1, __i2, __l.begin(), __l.end()); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
private:
template<class _Integer>
@@ -2159,7 +2159,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
operator+(const __versa_string<_CharT, _Traits, _Alloc, _Base>& __lhs,
_CharT __rhs);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _CharT, typename _Traits, typename _Alloc,
template <typename, typename, typename> class _Base>
inline __versa_string<_CharT, _Traits, _Alloc, _Base>
@@ -2572,7 +2572,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#if (defined(__GXX_EXPERIMENTAL_CXX0X__) && defined(_GLIBCXX_USE_C99))
+#if ((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99))
#include <ext/string_conversions.h>
@@ -2790,7 +2790,7 @@ _GLIBCXX_END_NAMESPACE_VERSION
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <bits/functional_hash.h>
@@ -2848,7 +2848,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif /* __GXX_EXPERIMENTAL_CXX0X__ */
+#endif // C++11
#include "vstring.tcc"
diff --git a/libstdc++-v3/include/ext/vstring_fwd.h b/libstdc++-v3/include/ext/vstring_fwd.h
index ce8cf53fb60..56e38559e95 100644
--- a/libstdc++-v3/include/ext/vstring_fwd.h
+++ b/libstdc++-v3/include/ext/vstring_fwd.h
@@ -67,7 +67,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
std::allocator<wchar_t>, __rc_string_base> __wrc_string;
#endif
-#if (defined(__GXX_EXPERIMENTAL_CXX0X__) \
+#if ((__cplusplus >= 201103L) \
&& defined(_GLIBCXX_USE_C99_STDINT_TR1))
typedef __versa_string<char16_t> __u16vstring;
diff --git a/libstdc++-v3/include/parallel/algo.h b/libstdc++-v3/include/parallel/algo.h
index 26d9e4c63f4..fb844f9664b 100644
--- a/libstdc++-v3/include/parallel/algo.h
+++ b/libstdc++-v3/include/parallel/algo.h
@@ -1674,7 +1674,7 @@ namespace __parallel
template<typename _RAIter, typename _RandomNumberGenerator>
void
random_shuffle(_RAIter __begin, _RAIter __end,
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_RandomNumberGenerator&& __rand)
#else
_RandomNumberGenerator& __rand)
diff --git a/libstdc++-v3/include/parallel/algorithmfwd.h b/libstdc++-v3/include/parallel/algorithmfwd.h
index 7d4a792cb59..8de1b799e59 100644
--- a/libstdc++-v3/include/parallel/algorithmfwd.h
+++ b/libstdc++-v3/include/parallel/algorithmfwd.h
@@ -691,7 +691,7 @@ namespace __parallel
template<typename _RAIter, typename _RandomNumberGenerator>
void
random_shuffle(_RAIter, _RAIter,
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_RandomNumberGenerator&&);
#else
_RandomNumberGenerator&);
diff --git a/libstdc++-v3/include/precompiled/extc++.h b/libstdc++-v3/include/precompiled/extc++.h
index 03e53390cd1..e93bbf829a7 100644
--- a/libstdc++-v3/include/precompiled/extc++.h
+++ b/libstdc++-v3/include/precompiled/extc++.h
@@ -26,7 +26,7 @@
* This is an implementation file for a precompiled header.
*/
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
#include <bits/stdtr1c++.h>
#endif
diff --git a/libstdc++-v3/include/precompiled/stdc++.h b/libstdc++-v3/include/precompiled/stdc++.h
index b85b5524473..278e6284c51 100644
--- a/libstdc++-v3/include/precompiled/stdc++.h
+++ b/libstdc++-v3/include/precompiled/stdc++.h
@@ -49,7 +49,7 @@
#include <cstring>
#include <ctime>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <ccomplex>
#include <cfenv>
#include <cinttypes>
@@ -95,7 +95,7 @@
#include <valarray>
#include <vector>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <array>
#include <atomic>
#include <chrono>
diff --git a/libstdc++-v3/include/profile/bitset b/libstdc++-v3/include/profile/bitset
index 17ee49b5a60..62027e852d5 100644
--- a/libstdc++-v3/include/profile/bitset
+++ b/libstdc++-v3/include/profile/bitset
@@ -98,7 +98,7 @@ namespace __profile
_GLIBCXX_CONSTEXPR bitset() _GLIBCXX_NOEXCEPT
: _Base() { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
constexpr bitset(unsigned long long __val) noexcept
#else
bitset(unsigned long __val)
@@ -127,7 +127,7 @@ namespace __profile
bitset(const _Base& __x) : _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _CharT>
explicit
bitset(const _CharT* __str,
@@ -239,7 +239,7 @@ namespace __profile
}
using _Base::to_ulong;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using _Base::to_ullong;
#endif
@@ -364,7 +364,7 @@ namespace __profile
{ return __os << __x._M_base(); }
} // namespace __profile
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// DR 1182.
/// std::hash specialization for bitset.
template<size_t _Nb>
diff --git a/libstdc++-v3/include/profile/deque b/libstdc++-v3/include/profile/deque
index 99cc46524a6..f5e5fa3bb2a 100644
--- a/libstdc++-v3/include/profile/deque
+++ b/libstdc++-v3/include/profile/deque
@@ -64,7 +64,7 @@ namespace __profile
deque(const _Allocator& __a = _Allocator())
: _Base(__a) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit
deque(size_type __n)
: _Base(__n) { }
@@ -79,7 +79,7 @@ namespace __profile
: _Base(__n, __value, __a) { }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -96,7 +96,7 @@ namespace __profile
deque(const _Base& __x)
: _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
deque(deque&& __x)
: _Base(std::move(__x))
{ }
@@ -115,7 +115,7 @@ namespace __profile
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
deque&
operator=(deque&& __x)
{
@@ -134,7 +134,7 @@ namespace __profile
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -152,7 +152,7 @@ namespace __profile
_Base::assign(__n, __t);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
assign(initializer_list<value_type> __l)
{
@@ -195,7 +195,7 @@ namespace __profile
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin()); }
@@ -217,7 +217,7 @@ namespace __profile
using _Base::size;
using _Base::max_size;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
resize(size_type __sz)
{
@@ -237,7 +237,7 @@ namespace __profile
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using _Base::shrink_to_fit;
#endif
@@ -295,7 +295,7 @@ namespace __profile
_Base::push_back(__x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push_front(_Tp&& __x)
{ emplace_front(std::move(__x)); }
@@ -335,7 +335,7 @@ namespace __profile
return iterator(__res);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(iterator __position, _Tp&& __x)
{ return emplace(__position, std::move(__x)); }
@@ -353,7 +353,7 @@ namespace __profile
_Base::insert(__position, __n, __x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
diff --git a/libstdc++-v3/include/profile/forward_list b/libstdc++-v3/include/profile/forward_list
index 9cb58202f33..6a5a343e869 100644
--- a/libstdc++-v3/include/profile/forward_list
+++ b/libstdc++-v3/include/profile/forward_list
@@ -29,7 +29,7 @@
#ifndef _GLIBCXX_PROFILE_FORWARD_LIST
#define _GLIBCXX_PROFILE_FORWARD_LIST 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -177,6 +177,6 @@ namespace __profile
} // namespace __profile
} // namespace std
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif
diff --git a/libstdc++-v3/include/profile/impl/profiler_trace.h b/libstdc++-v3/include/profile/impl/profiler_trace.h
index dadc5cac5e7..a3cc5dd5e1c 100644
--- a/libstdc++-v3/include/profile/impl/profiler_trace.h
+++ b/libstdc++-v3/include/profile/impl/profiler_trace.h
@@ -34,7 +34,7 @@
#include <cerrno>
#include <cstdlib> // atof, atoi, strtol, getenv, atexit, abort
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#define _GLIBCXX_IMPL_UNORDERED_MAP std::_GLIBCXX_STD_C::unordered_map
#include <unordered_map>
#else
diff --git a/libstdc++-v3/include/profile/list b/libstdc++-v3/include/profile/list
index 2f8535e946e..3fc58c70f6a 100644
--- a/libstdc++-v3/include/profile/list
+++ b/libstdc++-v3/include/profile/list
@@ -72,7 +72,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
__profcxx_list_construct2(this); // list2vector
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit
list(size_type __n)
: _Base(__n)
@@ -99,7 +99,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -127,7 +127,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
__profcxx_list_construct2(this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
list(list&& __x) noexcept
: _Base(std::move(__x))
{
@@ -153,7 +153,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
list&
operator=(list&& __x)
{
@@ -176,7 +176,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
{ _Base::assign(__l); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -237,7 +237,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); }
@@ -260,7 +260,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
using _Base::size;
using _Base::max_size;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
resize(size_type __sz)
{ _Base::resize(__sz); }
@@ -306,7 +306,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
_Base::push_front(__x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using _Base::emplace_front;
#endif
@@ -319,7 +319,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
using _Base::push_back;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using _Base::emplace_back;
#endif
@@ -332,7 +332,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
__profcxx_list_rewind(this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
iterator
emplace(iterator __position, _Args&&... __args)
@@ -350,7 +350,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
return iterator(_Base::insert(__position.base(), __x), this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(iterator __position, _Tp&& __x)
{
@@ -374,7 +374,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
_Base::insert(__position.base(), __n, __x);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -410,27 +410,27 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
// 23.2.2.4 list operations:
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
splice(iterator __position, list&& __x)
#else
splice(iterator __position, list& __x)
#endif
{ this->splice(__position, _GLIBCXX_MOVE(__x), __x.begin(), __x.end()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
splice(iterator __position, list& __x)
{ this->splice(__position, std::move(__x)); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
splice(iterator __position, list& __x, iterator __i)
{ this->splice(__position, std::move(__x), __i); }
#endif
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
splice(iterator __position, list&& __x, iterator __i)
#else
splice(iterator __position, list& __x, iterator __i)
@@ -445,7 +445,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
}
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
splice(iterator __position, list&& __x, iterator __first,
iterator __last)
#else
@@ -460,7 +460,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
__first.base(), __last.base());
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
splice(iterator __position, list& __x, iterator __first, iterator __last)
{ this->splice(__position, std::move(__x), __first, __last); }
@@ -532,7 +532,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
}
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
merge(list&& __x)
#else
merge(list& __x)
@@ -544,7 +544,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
{ _Base::merge(_GLIBCXX_MOVE(__x._M_base())); }
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
merge(list& __x)
{ this->merge(std::move(__x)); }
@@ -552,7 +552,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
template<class _Compare>
void
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
merge(list&& __x, _Compare __comp)
#else
merge(list& __x, _Compare __comp)
@@ -564,7 +564,7 @@ template<typename _Tp, typename _Allocator = std::allocator<_Tp> >
{ _Base::merge(_GLIBCXX_MOVE(__x._M_base()), __comp); }
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Compare>
void
merge(list& __x, _Compare __comp)
diff --git a/libstdc++-v3/include/profile/map.h b/libstdc++-v3/include/profile/map.h
index f96f18bab05..0603c02b8e2 100644
--- a/libstdc++-v3/include/profile/map.h
+++ b/libstdc++-v3/include/profile/map.h
@@ -69,7 +69,7 @@ namespace __profile
: _Base(__comp, __a)
{ __profcxx_map_to_unordered_map_construct(this); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -89,7 +89,7 @@ namespace __profile
: _Base(__x)
{ __profcxx_map_to_unordered_map_construct(this); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
map(map&& __x)
noexcept(is_nothrow_copy_constructible<_Compare>::value)
: _Base(std::move(__x))
@@ -111,7 +111,7 @@ namespace __profile
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
map&
operator=(map&& __x)
{
@@ -180,7 +180,7 @@ namespace __profile
return const_reverse_iterator(begin());
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin()); }
@@ -217,7 +217,7 @@ namespace __profile
return _Base::operator[](__k);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
mapped_type&
operator[](key_type&& __k)
{
@@ -241,7 +241,7 @@ namespace __profile
}
// modifiers:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
std::pair<iterator, bool>
emplace(_Args&&... __args)
@@ -275,7 +275,7 @@ namespace __profile
__res.second);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -291,7 +291,7 @@ namespace __profile
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
insert(std::initializer_list<value_type> __list)
{
@@ -303,7 +303,7 @@ namespace __profile
#endif
iterator
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
insert(const_iterator __position, const value_type& __x)
#else
insert(iterator __position, const value_type& __x)
@@ -316,7 +316,7 @@ namespace __profile
return __i;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -332,7 +332,7 @@ namespace __profile
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -347,7 +347,7 @@ namespace __profile
size() - size_before);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __position)
{
@@ -381,7 +381,7 @@ namespace __profile
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __first, const_iterator __last)
{ return iterator(_Base::erase(__first, __last)); }
diff --git a/libstdc++-v3/include/profile/multimap.h b/libstdc++-v3/include/profile/multimap.h
index 42662af363e..b1edd155e26 100644
--- a/libstdc++-v3/include/profile/multimap.h
+++ b/libstdc++-v3/include/profile/multimap.h
@@ -68,7 +68,7 @@ namespace __profile
const _Allocator& __a = _Allocator())
: _Base(__comp, __a) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -85,7 +85,7 @@ namespace __profile
multimap(const _Base& __x)
: _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
multimap(multimap&& __x)
noexcept(is_nothrow_copy_constructible<_Compare>::value)
: _Base(std::move(__x))
@@ -106,7 +106,7 @@ namespace __profile
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
multimap&
operator=(multimap&& __x)
{
@@ -161,7 +161,7 @@ namespace __profile
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin()); }
@@ -185,7 +185,7 @@ namespace __profile
using _Base::max_size;
// modifiers:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
iterator
emplace(_Args&&... __args)
@@ -206,7 +206,7 @@ namespace __profile
insert(const value_type& __x)
{ return iterator(_Base::insert(__x)); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -215,21 +215,21 @@ namespace __profile
{ return iterator(_Base::insert(std::forward<_Pair>(__x))); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
insert(std::initializer_list<value_type> __list)
{ _Base::insert(__list); }
#endif
iterator
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
insert(const_iterator __position, const value_type& __x)
#else
insert(iterator __position, const value_type& __x)
#endif
{ return iterator(_Base::insert(__position, __x)); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Pair, typename = typename
std::enable_if<std::is_constructible<value_type,
_Pair&&>::value>::type>
@@ -239,7 +239,7 @@ namespace __profile
std::forward<_Pair>(__x))); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -249,7 +249,7 @@ namespace __profile
insert(_InputIterator __first, _InputIterator __last)
{ _Base::insert(__first, __last); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __position)
{ return iterator(_Base::erase(__position)); }
@@ -277,7 +277,7 @@ namespace __profile
return __count;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __first, const_iterator __last)
{ return iterator(_Base::erase(__first, __last)); }
diff --git a/libstdc++-v3/include/profile/multiset.h b/libstdc++-v3/include/profile/multiset.h
index 358879726d9..820103c3489 100644
--- a/libstdc++-v3/include/profile/multiset.h
+++ b/libstdc++-v3/include/profile/multiset.h
@@ -68,7 +68,7 @@ namespace __profile
const _Allocator& __a = _Allocator())
: _Base(__comp, __a) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -85,7 +85,7 @@ namespace __profile
multiset(const _Base& __x)
: _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
multiset(multiset&& __x)
noexcept(is_nothrow_copy_constructible<_Compare>::value)
: _Base(std::move(__x))
@@ -106,7 +106,7 @@ namespace __profile
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
multiset&
operator=(multiset&& __x)
{
@@ -161,7 +161,7 @@ namespace __profile
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin()); }
@@ -185,7 +185,7 @@ namespace __profile
using _Base::max_size;
// modifiers:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
iterator
emplace(_Args&&... __args)
@@ -204,7 +204,7 @@ namespace __profile
insert(const value_type& __x)
{ return iterator(_Base::insert(__x)); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(value_type&& __x)
{ return iterator(_Base::insert(std::move(__x))); }
@@ -214,13 +214,13 @@ namespace __profile
insert(const_iterator __position, const value_type& __x)
{ return iterator(_Base::insert(__position, __x)); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(const_iterator __position, value_type&& __x)
{ return iterator(_Base::insert(__position, std::move(__x))); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -230,13 +230,13 @@ namespace __profile
insert(_InputIterator __first, _InputIterator __last)
{ _Base::insert(__first, __last); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
insert(initializer_list<value_type> __l)
{ _Base::insert(__l); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __position)
{ return iterator(_Base::erase(__position)); }
@@ -260,7 +260,7 @@ namespace __profile
return __count;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __first, const_iterator __last)
{ return iterator(_Base::erase(__first, __last)); }
diff --git a/libstdc++-v3/include/profile/set.h b/libstdc++-v3/include/profile/set.h
index 5aadab8317c..be827fe11ec 100644
--- a/libstdc++-v3/include/profile/set.h
+++ b/libstdc++-v3/include/profile/set.h
@@ -68,7 +68,7 @@ namespace __profile
const _Allocator& __a = _Allocator())
: _Base(__comp, __a) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -85,7 +85,7 @@ namespace __profile
set(const _Base& __x)
: _Base(__x) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
set(set&& __x)
noexcept(is_nothrow_copy_constructible<_Compare>::value)
: _Base(std::move(__x))
@@ -106,7 +106,7 @@ namespace __profile
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
set&
operator=(set&& __x)
{
@@ -161,7 +161,7 @@ namespace __profile
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin()); }
@@ -185,7 +185,7 @@ namespace __profile
using _Base::max_size;
// modifiers:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename... _Args>
std::pair<iterator, bool>
emplace(_Args&&... __args)
@@ -213,7 +213,7 @@ namespace __profile
__res.second);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
std::pair<iterator, bool>
insert(value_type&& __x)
{
@@ -229,13 +229,13 @@ namespace __profile
insert(const_iterator __position, const value_type& __x)
{ return iterator(_Base::insert(__position, __x)); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(const_iterator __position, value_type&& __x)
{ return iterator(_Base::insert(__position, std::move(__x))); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -245,13 +245,13 @@ namespace __profile
insert(_InputIterator __first, _InputIterator __last)
{ _Base::insert(__first, __last); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
insert(initializer_list<value_type> __l)
{ _Base::insert(__l); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __position)
{ return iterator(_Base::erase(__position)); }
@@ -274,7 +274,7 @@ namespace __profile
}
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
erase(const_iterator __first, const_iterator __last)
{ return iterator(_Base::erase(__first, __last)); }
diff --git a/libstdc++-v3/include/profile/unordered_map b/libstdc++-v3/include/profile/unordered_map
index 3663ab58aa9..e7b4c379ac4 100644
--- a/libstdc++-v3/include/profile/unordered_map
+++ b/libstdc++-v3/include/profile/unordered_map
@@ -28,7 +28,7 @@
#ifndef _GLIBCXX_PROFILE_UNORDERED_MAP
#define _GLIBCXX_PROFILE_UNORDERED_MAP 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
# include <unordered_map>
@@ -614,6 +614,6 @@ namespace __profile
#undef _GLIBCXX_BASE
#undef _GLIBCXX_STD_BASE
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif
diff --git a/libstdc++-v3/include/profile/unordered_set b/libstdc++-v3/include/profile/unordered_set
index 529454cf646..357c073feaa 100644
--- a/libstdc++-v3/include/profile/unordered_set
+++ b/libstdc++-v3/include/profile/unordered_set
@@ -28,7 +28,7 @@
#ifndef _GLIBCXX_PROFILE_UNORDERED_SET
#define _GLIBCXX_PROFILE_UNORDERED_SET 1
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
# include <unordered_set>
@@ -573,6 +573,6 @@ namespace __profile
#undef _GLIBCXX_BASE
#undef _GLIBCXX_STD_BASE
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif
diff --git a/libstdc++-v3/include/profile/vector b/libstdc++-v3/include/profile/vector
index ec931a3bd91..0646f15ad40 100644
--- a/libstdc++-v3/include/profile/vector
+++ b/libstdc++-v3/include/profile/vector
@@ -44,7 +44,7 @@ namespace __profile
{
typedef _GLIBCXX_STD_C::vector<_Tp, _Allocator> _Base;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
typedef __gnu_cxx::__alloc_traits<_Allocator> _Alloc_traits;
#endif
@@ -82,7 +82,7 @@ namespace __profile
__profcxx_vector_construct2(this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit
vector(size_type __n, const _Allocator& __a = _Allocator())
: _Base(__n, __a)
@@ -109,7 +109,7 @@ namespace __profile
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -138,7 +138,7 @@ namespace __profile
__profcxx_vector_construct2(this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
vector(vector&& __x) noexcept
: _Base(std::move(__x))
{
@@ -178,7 +178,7 @@ namespace __profile
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
vector&
operator=(vector&& __x) noexcept(_Alloc_traits::_S_nothrow_move())
{
@@ -233,7 +233,7 @@ namespace __profile
rend() const _GLIBCXX_NOEXCEPT
{ return const_reverse_iterator(begin()); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const_iterator
cbegin() const noexcept
{ return const_iterator(_Base::begin(), this); }
@@ -255,7 +255,7 @@ namespace __profile
using _Base::size;
using _Base::max_size;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
resize(size_type __sz)
{
@@ -281,7 +281,7 @@ namespace __profile
}
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using _Base::shrink_to_fit;
#endif
@@ -340,7 +340,7 @@ namespace __profile
_M_profile_resize(this, __old_size, this->capacity());
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
push_back(_Tp&& __x)
{
@@ -362,7 +362,7 @@ namespace __profile
return iterator(__res, this);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
iterator
insert(iterator __position, _Tp&& __x)
{
@@ -379,7 +379,7 @@ namespace __profile
{ this->insert(__position, __l.begin(), __l.end()); }
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
void
swap(vector&& __x)
{
@@ -389,7 +389,7 @@ namespace __profile
void
swap(vector& __x)
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
noexcept(_Alloc_traits::_S_nothrow_swap())
#endif
{
@@ -406,7 +406,7 @@ namespace __profile
_M_profile_resize(this, __old_size, this->capacity());
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _InputIterator,
typename = std::_RequireInputIter<_InputIterator>>
#else
@@ -511,7 +511,7 @@ namespace __profile
swap(vector<_Tp, _Alloc>& __lhs, vector<_Tp, _Alloc>& __rhs)
{ __lhs.swap(__rhs); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, typename _Alloc>
inline void
swap(vector<_Tp, _Alloc>&& __lhs, vector<_Tp, _Alloc>& __rhs)
@@ -525,7 +525,7 @@ namespace __profile
} // namespace __profile
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// DR 1182.
/// std::hash specialization for vector<bool>.
template<typename _Alloc>
diff --git a/libstdc++-v3/include/std/array b/libstdc++-v3/include/std/array
index f83baa75ccc..00d3123225c 100644
--- a/libstdc++-v3/include/std/array
+++ b/libstdc++-v3/include/std/array
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -321,6 +321,6 @@ _GLIBCXX_END_NAMESPACE_CONTAINER
# include <profile/array>
#endif
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_ARRAY
diff --git a/libstdc++-v3/include/std/atomic b/libstdc++-v3/include/std/atomic
index 4f9cd5035a3..4012f7d1b6b 100644
--- a/libstdc++-v3/include/std/atomic
+++ b/libstdc++-v3/include/std/atomic
@@ -34,7 +34,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#endif
diff --git a/libstdc++-v3/include/std/bitset b/libstdc++-v3/include/std/bitset
index 7f3cb4dec85..3ed7b2f32cf 100644
--- a/libstdc++-v3/include/std/bitset
+++ b/libstdc++-v3/include/std/bitset
@@ -80,7 +80,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_GLIBCXX_CONSTEXPR _Base_bitset() _GLIBCXX_NOEXCEPT
: _M_w() { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
constexpr _Base_bitset(unsigned long long __val) noexcept
: _M_w{ _WordT(__val)
#if __SIZEOF_LONG_LONG__ > __SIZEOF_LONG__
@@ -117,7 +117,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_getword(size_t __pos) const _GLIBCXX_NOEXCEPT
{ return _M_w[_S_whichword(__pos)]; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const _WordT*
_M_getdata() const noexcept
{ return _M_w; }
@@ -218,7 +218,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
unsigned long
_M_do_to_ulong() const;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
unsigned long long
_M_do_to_ullong() const;
#endif
@@ -296,7 +296,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
return _M_w[0];
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<size_t _Nw>
unsigned long long
_Base_bitset<_Nw>::_M_do_to_ullong() const
@@ -380,7 +380,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
: _M_w(0)
{ }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
constexpr _Base_bitset(unsigned long long __val) noexcept
#else
_Base_bitset(unsigned long __val)
@@ -412,7 +412,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_getword(size_t) const _GLIBCXX_NOEXCEPT
{ return _M_w; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
const _WordT*
_M_getdata() const noexcept
{ return &_M_w; }
@@ -480,7 +480,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_do_to_ulong() const _GLIBCXX_NOEXCEPT
{ return _M_w; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
unsigned long long
_M_do_to_ullong() const noexcept
{ return _M_w; }
@@ -525,7 +525,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_GLIBCXX_CONSTEXPR _Base_bitset() _GLIBCXX_NOEXCEPT
{ }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
constexpr _Base_bitset(unsigned long long) noexcept
#else
_Base_bitset(unsigned long)
@@ -626,7 +626,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_do_to_ulong() const _GLIBCXX_NOEXCEPT
{ return 0; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
unsigned long long
_M_do_to_ullong() const noexcept
{ return 0; }
@@ -664,7 +664,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_S_do_sanitize(_WordT) _GLIBCXX_NOEXCEPT { }
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<size_t _Nb, bool = _Nb < _GLIBCXX_BITSET_BITS_PER_ULL>
struct _Sanitize_val
{
@@ -761,7 +761,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
__sanitize_type::_S_do_sanitize(this->_M_hiword());
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename> friend class hash;
#endif
@@ -845,7 +845,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
{ }
/// Initial bits bitwise-copied from a single word (others set to zero).
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
constexpr bitset(unsigned long long __val) noexcept
: _Base(_Sanitize_val<_Nb>::_S_do_sanitize_val(__val)) { }
#else
@@ -912,7 +912,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
_M_copy_from_string(__s, __position, __n, __zero, __one);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* Construct from a character %array.
* @param __str An %array of characters @a zero and @a one.
@@ -1162,7 +1162,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
to_ulong() const
{ return this->_M_do_to_ulong(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
unsigned long long
to_ullong() const
{ return this->_M_do_to_ullong(); }
@@ -1540,7 +1540,7 @@ _GLIBCXX_END_NAMESPACE_CONTAINER
#undef _GLIBCXX_BITSET_BITS_PER_WORD
#undef _GLIBCXX_BITSET_BITS_PER_ULL
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <bits/functional_hash.h>
@@ -1574,7 +1574,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#ifdef _GLIBCXX_DEBUG
# include <debug/bitset>
diff --git a/libstdc++-v3/include/std/chrono b/libstdc++-v3/include/std/chrono
index d920a7dd379..7a9a8ce012e 100644
--- a/libstdc++-v3/include/std/chrono
+++ b/libstdc++-v3/include/std/chrono
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -755,6 +755,6 @@ _GLIBCXX_END_NAMESPACE_VERSION
#endif //_GLIBCXX_USE_C99_STDINT_TR1
-#endif //__GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif //_GLIBCXX_CHRONO
diff --git a/libstdc++-v3/include/std/complex b/libstdc++-v3/include/std/complex
index c0e333117de..f9221a86e0b 100644
--- a/libstdc++-v3/include/std/complex
+++ b/libstdc++-v3/include/std/complex
@@ -87,7 +87,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Tp> complex<_Tp> log(const complex<_Tp>&);
/// Return complex base 10 logarithm of @a z.
template<typename _Tp> complex<_Tp> log10(const complex<_Tp>&);
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
// DR 844.
/// Return @a x to the @a y'th power.
template<typename _Tp> complex<_Tp> pow(const complex<_Tp>&, int);
@@ -138,7 +138,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_CONSTEXPR complex(const complex<_Up>& __z)
: _M_real(__z.real()), _M_imag(__z.imag()) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 387. std::complex over-encapsulated.
constexpr _Tp
@@ -529,7 +529,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
// Values
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp>
constexpr _Tp
real(const complex<_Tp>& __z)
@@ -952,7 +952,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// 26.2.8/9 pow(__x, __y): Returns the complex power base of __x
// raised to the __y-th power. The branch
// cut is on the negative axis.
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
template<typename _Tp>
complex<_Tp>
__complex_pow_unsigned(complex<_Tp> __x, unsigned __n)
@@ -1046,7 +1046,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_CONSTEXPR complex(_ComplexT __z) : _M_value(__z) { }
_GLIBCXX_CONSTEXPR complex(float __r = 0.0f, float __i = 0.0f)
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
: _M_value{ __r, __i } { }
#else
{
@@ -1058,7 +1058,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
explicit _GLIBCXX_CONSTEXPR complex(const complex<double>&);
explicit _GLIBCXX_CONSTEXPR complex(const complex<long double>&);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 387. std::complex over-encapsulated.
constexpr float
@@ -1193,7 +1193,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_CONSTEXPR complex(_ComplexT __z) : _M_value(__z) { }
_GLIBCXX_CONSTEXPR complex(double __r = 0.0, double __i = 0.0)
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
: _M_value{ __r, __i } { }
#else
{
@@ -1207,7 +1207,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
explicit _GLIBCXX_CONSTEXPR complex(const complex<long double>&);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 387. std::complex over-encapsulated.
constexpr double
@@ -1342,7 +1342,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_CONSTEXPR complex(long double __r = 0.0L,
long double __i = 0.0L)
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
: _M_value{ __r, __i } { }
#else
{
@@ -1357,7 +1357,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_CONSTEXPR complex(const complex<double>& __z)
: _M_value(__z.__rep()) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 387. std::complex over-encapsulated.
constexpr long double
@@ -1549,7 +1549,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace std _GLIBCXX_VISIBILITY(default)
{
@@ -1919,6 +1919,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif /* _GLIBCXX_COMPLEX */
diff --git a/libstdc++-v3/include/std/condition_variable b/libstdc++-v3/include/std/condition_variable
index 0a85e1a3e20..a58d7f5ad85 100644
--- a/libstdc++-v3/include/std/condition_variable
+++ b/libstdc++-v3/include/std/condition_variable
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -284,6 +284,6 @@ _GLIBCXX_END_NAMESPACE_VERSION
#endif // _GLIBCXX_HAS_GTHREADS && _GLIBCXX_USE_C99_STDINT_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_CONDITION_VARIABLE
diff --git a/libstdc++-v3/include/std/forward_list b/libstdc++-v3/include/std/forward_list
index a1befcf4bdb..4be31114b46 100644
--- a/libstdc++-v3/include/std/forward_list
+++ b/libstdc++-v3/include/std/forward_list
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -47,6 +47,6 @@
# include <profile/forward_list>
#endif
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_FORWARD_LIST
diff --git a/libstdc++-v3/include/std/fstream b/libstdc++-v3/include/std/fstream
index 098b5b1248c..43c59034791 100644
--- a/libstdc++-v3/include/std/fstream
+++ b/libstdc++-v3/include/std/fstream
@@ -42,7 +42,7 @@
#include <bits/codecvt.h>
#include <cstdio> // For BUFSIZ
#include <bits/basic_file.h> // For __basic_file, __c_lock
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <string> // For std::string overloads.
#endif
@@ -271,7 +271,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__filebuf_type*
open(const char* __s, ios_base::openmode __mode);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Opens an external file.
* @param __s The name of the file.
@@ -473,7 +473,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
this->open(__s, __mode);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Create an input file stream.
* @param __s std::string specifying the filename.
@@ -547,7 +547,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
this->clear();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Opens an external file.
* @param __s The name of the file.
@@ -647,7 +647,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
this->open(__s, __mode);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Create an output file stream.
* @param __s std::string specifying the filename.
@@ -723,7 +723,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
this->clear();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Opens an external file.
* @param __s The name of the file.
@@ -823,7 +823,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
this->open(__s, __mode);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Create an input/output file stream.
* @param __s Null terminated string specifying the filename.
@@ -896,7 +896,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
this->clear();
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Opens an external file.
* @param __s The name of the file.
diff --git a/libstdc++-v3/include/std/functional b/libstdc++-v3/include/std/functional
index 0edb4f1ad33..4dbf4d55a10 100644
--- a/libstdc++-v3/include/std/functional
+++ b/libstdc++-v3/include/std/functional
@@ -49,7 +49,7 @@
#include <bits/c++config.h>
#include <bits/stl_function.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <typeinfo>
#include <new>
@@ -2438,6 +2438,6 @@ _GLIBCXX_HAS_NESTED_TYPE(result_type)
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace std
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_FUNCTIONAL
diff --git a/libstdc++-v3/include/std/future b/libstdc++-v3/include/std/future
index 9568192e5c4..7f71dde5d55 100644
--- a/libstdc++-v3/include/std/future
+++ b/libstdc++-v3/include/std/future
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -1521,6 +1521,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_FUTURE
diff --git a/libstdc++-v3/include/std/iomanip b/libstdc++-v3/include/std/iomanip
index 840d7566209..15fcbd570a6 100644
--- a/libstdc++-v3/include/std/iomanip
+++ b/libstdc++-v3/include/std/iomanip
@@ -41,7 +41,7 @@
#include <iosfwd>
#include <bits/ios_base.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <locale>
#endif
@@ -240,7 +240,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return __os;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _MoneyT>
struct _Get_money { _MoneyT& _M_mon; bool _M_intl; };
diff --git a/libstdc++-v3/include/std/istream b/libstdc++-v3/include/std/istream
index abc71206a06..8c2751cfbc1 100644
--- a/libstdc++-v3/include/std/istream
+++ b/libstdc++-v3/include/std/istream
@@ -701,7 +701,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* For ease of use, sentries may be converted to booleans. The
* return value is that of the sentry state (true == okay).
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit
#endif
operator bool() const
@@ -857,7 +857,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
basic_istream<_CharT, _Traits>&
ws(basic_istream<_CharT, _Traits>& __is);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// [27.7.1.6] Rvalue stream extraction
/**
* @brief Generic extractor for rvalue stream
@@ -873,7 +873,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
inline basic_istream<_CharT, _Traits>&
operator>>(basic_istream<_CharT, _Traits>&& __is, _Tp& __x)
{ return (__is >> __x); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
diff --git a/libstdc++-v3/include/std/limits b/libstdc++-v3/include/std/limits
index aff853b8208..ea6de35e832 100644
--- a/libstdc++-v3/include/std/limits
+++ b/libstdc++-v3/include/std/limits
@@ -203,7 +203,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/** The number of base 10 digits that can be represented without change. */
static _GLIBCXX_USE_CONSTEXPR int digits10 = 0;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/** The number of base 10 digits required to ensure that values which
differ are always differentiated. */
static constexpr int max_digits10 = 0;
@@ -315,7 +315,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR _Tp
max() _GLIBCXX_USE_NOEXCEPT { return _Tp(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/** A finite value x such that there is no other finite value y
* where y < x. */
static constexpr _Tp
@@ -352,7 +352,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
denorm_min() _GLIBCXX_USE_NOEXCEPT { return _Tp(); }
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp>
struct numeric_limits<const _Tp>
: public numeric_limits<_Tp> { };
@@ -381,13 +381,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR bool
max() _GLIBCXX_USE_NOEXCEPT { return true; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr bool
lowest() noexcept { return min(); }
#endif
static _GLIBCXX_USE_CONSTEXPR int digits = 1;
static _GLIBCXX_USE_CONSTEXPR int digits10 = 0;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = false;
@@ -450,14 +450,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR char
max() _GLIBCXX_USE_NOEXCEPT { return __glibcxx_max(char); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr char
lowest() noexcept { return min(); }
#endif
static _GLIBCXX_USE_CONSTEXPR int digits = __glibcxx_digits (char);
static _GLIBCXX_USE_CONSTEXPR int digits10 = __glibcxx_digits10 (char);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = __glibcxx_signed (char);
@@ -517,7 +517,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR signed char
max() _GLIBCXX_USE_NOEXCEPT { return __SCHAR_MAX__; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr signed char
lowest() noexcept { return min(); }
#endif
@@ -525,7 +525,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_USE_CONSTEXPR int digits = __glibcxx_digits (signed char);
static _GLIBCXX_USE_CONSTEXPR int digits10
= __glibcxx_digits10 (signed char);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = true;
@@ -587,7 +587,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR unsigned char
max() _GLIBCXX_USE_NOEXCEPT { return __SCHAR_MAX__ * 2U + 1; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr unsigned char
lowest() noexcept { return min(); }
#endif
@@ -596,7 +596,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
= __glibcxx_digits (unsigned char);
static _GLIBCXX_USE_CONSTEXPR int digits10
= __glibcxx_digits10 (unsigned char);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = false;
@@ -660,7 +660,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR wchar_t
max() _GLIBCXX_USE_NOEXCEPT { return __glibcxx_max (wchar_t); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr wchar_t
lowest() noexcept { return min(); }
#endif
@@ -668,7 +668,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_USE_CONSTEXPR int digits = __glibcxx_digits (wchar_t);
static _GLIBCXX_USE_CONSTEXPR int digits10
= __glibcxx_digits10 (wchar_t);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = __glibcxx_signed (wchar_t);
@@ -716,7 +716,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
= round_toward_zero;
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/// numeric_limits<char16_t> specialization.
template<>
struct numeric_limits<char16_t>
@@ -852,14 +852,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR short
max() _GLIBCXX_USE_NOEXCEPT { return __SHRT_MAX__; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr short
lowest() noexcept { return min(); }
#endif
static _GLIBCXX_USE_CONSTEXPR int digits = __glibcxx_digits (short);
static _GLIBCXX_USE_CONSTEXPR int digits10 = __glibcxx_digits10 (short);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = true;
@@ -919,7 +919,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR unsigned short
max() _GLIBCXX_USE_NOEXCEPT { return __SHRT_MAX__ * 2U + 1; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr unsigned short
lowest() noexcept { return min(); }
#endif
@@ -928,7 +928,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
= __glibcxx_digits (unsigned short);
static _GLIBCXX_USE_CONSTEXPR int digits10
= __glibcxx_digits10 (unsigned short);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = false;
@@ -992,14 +992,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR int
max() _GLIBCXX_USE_NOEXCEPT { return __INT_MAX__; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int
lowest() noexcept { return min(); }
#endif
static _GLIBCXX_USE_CONSTEXPR int digits = __glibcxx_digits (int);
static _GLIBCXX_USE_CONSTEXPR int digits10 = __glibcxx_digits10 (int);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = true;
@@ -1059,7 +1059,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR unsigned int
max() _GLIBCXX_USE_NOEXCEPT { return __INT_MAX__ * 2U + 1; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr unsigned int
lowest() noexcept { return min(); }
#endif
@@ -1068,7 +1068,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
= __glibcxx_digits (unsigned int);
static _GLIBCXX_USE_CONSTEXPR int digits10
= __glibcxx_digits10 (unsigned int);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = false;
@@ -1131,14 +1131,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR long
max() _GLIBCXX_USE_NOEXCEPT { return __LONG_MAX__; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr long
lowest() noexcept { return min(); }
#endif
static _GLIBCXX_USE_CONSTEXPR int digits = __glibcxx_digits (long);
static _GLIBCXX_USE_CONSTEXPR int digits10 = __glibcxx_digits10 (long);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = true;
@@ -1198,7 +1198,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR unsigned long
max() _GLIBCXX_USE_NOEXCEPT { return __LONG_MAX__ * 2UL + 1; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr unsigned long
lowest() noexcept { return min(); }
#endif
@@ -1207,7 +1207,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
= __glibcxx_digits (unsigned long);
static _GLIBCXX_USE_CONSTEXPR int digits10
= __glibcxx_digits10 (unsigned long);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = false;
@@ -1271,7 +1271,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR long long
max() _GLIBCXX_USE_NOEXCEPT { return __LONG_LONG_MAX__; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr long long
lowest() noexcept { return min(); }
#endif
@@ -1280,7 +1280,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
= __glibcxx_digits (long long);
static _GLIBCXX_USE_CONSTEXPR int digits10
= __glibcxx_digits10 (long long);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = true;
@@ -1341,7 +1341,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR unsigned long long
max() _GLIBCXX_USE_NOEXCEPT { return __LONG_LONG_MAX__ * 2ULL + 1; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr unsigned long long
lowest() noexcept { return min(); }
#endif
@@ -1350,7 +1350,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
= __glibcxx_digits (unsigned long long);
static _GLIBCXX_USE_CONSTEXPR int digits10
= __glibcxx_digits10 (unsigned long long);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = false;
@@ -1415,7 +1415,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR __int128
max() _GLIBCXX_USE_NOEXCEPT { return __glibcxx_max (__int128); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr __int128
lowest() noexcept { return min(); }
#endif
@@ -1424,7 +1424,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
= __glibcxx_digits (__int128);
static _GLIBCXX_USE_CONSTEXPR int digits10
= __glibcxx_digits10 (__int128);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = true;
@@ -1489,7 +1489,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR unsigned __int128
max() _GLIBCXX_USE_NOEXCEPT { return __glibcxx_max (unsigned __int128); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr unsigned __int128
lowest() noexcept { return min(); }
#endif
@@ -1498,7 +1498,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
= __glibcxx_digits (unsigned __int128);
static _GLIBCXX_USE_CONSTEXPR int digits10
= __glibcxx_digits10 (unsigned __int128);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10 = 0;
#endif
static _GLIBCXX_USE_CONSTEXPR bool is_signed = false;
@@ -1563,14 +1563,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR float
max() _GLIBCXX_USE_NOEXCEPT { return __FLT_MAX__; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr float
lowest() noexcept { return -__FLT_MAX__; }
#endif
static _GLIBCXX_USE_CONSTEXPR int digits = __FLT_MANT_DIG__;
static _GLIBCXX_USE_CONSTEXPR int digits10 = __FLT_DIG__;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10
= __glibcxx_max_digits10 (__FLT_MANT_DIG__);
#endif
@@ -1638,14 +1638,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR double
max() _GLIBCXX_USE_NOEXCEPT { return __DBL_MAX__; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr double
lowest() noexcept { return -__DBL_MAX__; }
#endif
static _GLIBCXX_USE_CONSTEXPR int digits = __DBL_MANT_DIG__;
static _GLIBCXX_USE_CONSTEXPR int digits10 = __DBL_DIG__;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr int max_digits10
= __glibcxx_max_digits10 (__DBL_MANT_DIG__);
#endif
@@ -1713,14 +1713,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
static _GLIBCXX_CONSTEXPR long double
max() _GLIBCXX_USE_NOEXCEPT { return __LDBL_MAX__; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static constexpr long double
lowest() noexcept { return -__LDBL_MAX__; }
#endif
static _GLIBCXX_USE_CONSTEXPR int digits = __LDBL_MANT_DIG__;
static _GLIBCXX_USE_CONSTEXPR int digits10 = __LDBL_DIG__;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static _GLIBCXX_USE_CONSTEXPR int max_digits10
= __glibcxx_max_digits10 (__LDBL_MANT_DIG__);
#endif
diff --git a/libstdc++-v3/include/std/memory b/libstdc++-v3/include/std/memory
index 73482ff085b..d19b8ff4472 100644
--- a/libstdc++-v3/include/std/memory
+++ b/libstdc++-v3/include/std/memory
@@ -66,7 +66,7 @@
#include <bits/stl_tempbuf.h>
#include <bits/stl_raw_storage_iter.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# include <exception> // std::exception
# include <typeinfo> // std::type_info in get_deleter
# include <iosfwd> // std::basic_ostream
diff --git a/libstdc++-v3/include/std/mutex b/libstdc++-v3/include/std/mutex
index 77faf739ce6..a2b533b1e08 100644
--- a/libstdc++-v3/include/std/mutex
+++ b/libstdc++-v3/include/std/mutex
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -797,6 +797,6 @@ _GLIBCXX_END_NAMESPACE_VERSION
#endif // _GLIBCXX_HAS_GTHREADS && _GLIBCXX_USE_C99_STDINT_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_MUTEX
diff --git a/libstdc++-v3/include/std/ostream b/libstdc++-v3/include/std/ostream
index eb8b885e17b..8b1d14c7c14 100644
--- a/libstdc++-v3/include/std/ostream
+++ b/libstdc++-v3/include/std/ostream
@@ -445,7 +445,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* For ease of use, sentries may be converted to booleans. The
* return value is that of the sentry state (true == okay).
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit
#endif
operator bool() const
@@ -588,7 +588,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
flush(basic_ostream<_CharT, _Traits>& __os)
{ return __os.flush(); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Generic inserter for rvalue stream
* @param __os An input stream.
@@ -603,7 +603,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
inline basic_ostream<_CharT, _Traits>&
operator<<(basic_ostream<_CharT, _Traits>&& __os, const _Tp& __x)
{ return (__os << __x); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace std
diff --git a/libstdc++-v3/include/std/random b/libstdc++-v3/include/std/random
index d774a53cedf..830d7f28b3f 100644
--- a/libstdc++-v3/include/std/random
+++ b/libstdc++-v3/include/std/random
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -53,6 +53,6 @@
#endif // _GLIBCXX_USE_C99_STDINT_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_RANDOM
diff --git a/libstdc++-v3/include/std/ratio b/libstdc++-v3/include/std/ratio
index d36d1b2066f..b3463553d4a 100644
--- a/libstdc++-v3/include/std/ratio
+++ b/libstdc++-v3/include/std/ratio
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -533,6 +533,6 @@ _GLIBCXX_END_NAMESPACE_VERSION
#endif //_GLIBCXX_USE_C99_STDINT_TR1
-#endif //__GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif //_GLIBCXX_RATIO
diff --git a/libstdc++-v3/include/std/regex b/libstdc++-v3/include/std/regex
index eabb843078e..fa129affd79 100644
--- a/libstdc++-v3/include/std/regex
+++ b/libstdc++-v3/include/std/regex
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -61,6 +61,6 @@
#include <bits/regex_grep_matcher.h>
#include <bits/regex.h>
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_REGEX
diff --git a/libstdc++-v3/include/std/scoped_allocator b/libstdc++-v3/include/std/scoped_allocator
index 07a2e5e854e..f5041ec724e 100644
--- a/libstdc++-v3/include/std/scoped_allocator
+++ b/libstdc++-v3/include/std/scoped_allocator
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -456,6 +456,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _SCOPED_ALLOCATOR
diff --git a/libstdc++-v3/include/std/system_error b/libstdc++-v3/include/std/system_error
index 129cbeefe59..4c6f6bdc9f3 100644
--- a/libstdc++-v3/include/std/system_error
+++ b/libstdc++-v3/include/std/system_error
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -373,6 +373,6 @@ _GLIBCXX_END_NAMESPACE_VERSION
#endif // _GLIBCXX_COMPATIBILITY_CXX0X
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_SYSTEM_ERROR
diff --git a/libstdc++-v3/include/std/thread b/libstdc++-v3/include/std/thread
index 8a45b65b817..6a4e85fdcf4 100644
--- a/libstdc++-v3/include/std/thread
+++ b/libstdc++-v3/include/std/thread
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -293,6 +293,6 @@ _GLIBCXX_END_NAMESPACE_VERSION
#endif // _GLIBCXX_HAS_GTHREADS && _GLIBCXX_USE_C99_STDINT_TR1
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_THREAD
diff --git a/libstdc++-v3/include/std/tuple b/libstdc++-v3/include/std/tuple
index 1e3cc7ed998..717e715d2de 100644
--- a/libstdc++-v3/include/std/tuple
+++ b/libstdc++-v3/include/std/tuple
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -1083,6 +1083,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_TUPLE
diff --git a/libstdc++-v3/include/std/type_traits b/libstdc++-v3/include/std/type_traits
index 11f06c13e90..cd7d72811bd 100644
--- a/libstdc++-v3/include/std/type_traits
+++ b/libstdc++-v3/include/std/type_traits
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -2066,6 +2066,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_TYPE_TRAITS
diff --git a/libstdc++-v3/include/std/typeindex b/libstdc++-v3/include/std/typeindex
index fa07ac620e6..b8a78d3f8d5 100644
--- a/libstdc++-v3/include/std/typeindex
+++ b/libstdc++-v3/include/std/typeindex
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -104,6 +104,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_TYPEINDEX
diff --git a/libstdc++-v3/include/std/unordered_map b/libstdc++-v3/include/std/unordered_map
index 9241f30f82e..fff292767a3 100644
--- a/libstdc++-v3/include/std/unordered_map
+++ b/libstdc++-v3/include/std/unordered_map
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -55,6 +55,6 @@
# include <profile/unordered_map>
#endif
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_UNORDERED_MAP
diff --git a/libstdc++-v3/include/std/unordered_set b/libstdc++-v3/include/std/unordered_set
index 4d4517b451c..bb9d3c8996a 100644
--- a/libstdc++-v3/include/std/unordered_set
+++ b/libstdc++-v3/include/std/unordered_set
@@ -31,7 +31,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -54,6 +54,6 @@
#ifdef _GLIBCXX_PROFILE
# include <profile/unordered_set>
#endif
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _GLIBCXX_UNORDERED_SET
diff --git a/libstdc++-v3/include/std/utility b/libstdc++-v3/include/std/utility
index 11efd74335b..c23d7c50e6c 100644
--- a/libstdc++-v3/include/std/utility
+++ b/libstdc++-v3/include/std/utility
@@ -71,7 +71,7 @@
#include <bits/stl_relops.h>
#include <bits/stl_pair.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <bits/move.h>
#include <initializer_list>
diff --git a/libstdc++-v3/include/std/valarray b/libstdc++-v3/include/std/valarray
index a159aab51ae..16d3abe883b 100644
--- a/libstdc++-v3/include/std/valarray
+++ b/libstdc++-v3/include/std/valarray
@@ -39,7 +39,7 @@
#include <cmath>
#include <algorithm>
#include <debug/debug.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <initializer_list>
#endif
@@ -142,7 +142,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/// Copy constructor.
valarray(const valarray&);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/// Move constructor.
valarray(valarray&&) noexcept;
#endif
@@ -159,7 +159,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
/// Construct an array with the same size and values in @a ia.
valarray(const indirect_array<_Tp>&);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/// Construct an array with an initializer_list of values.
valarray(initializer_list<_Tp>);
#endif
@@ -179,7 +179,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
*/
valarray<_Tp>& operator=(const valarray<_Tp>& __v);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Move assign elements to an array.
*
@@ -239,7 +239,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
*/
valarray<_Tp>& operator=(const indirect_array<_Tp>& __ia);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Assign elements to an initializer_list.
*
@@ -467,7 +467,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
valarray<_Tp>& operator>>=(const _Expr<_Dom, _Tp>&);
// _lib.valarray.members_ member functions:
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/// Swap.
void swap(valarray<_Tp>& __v) noexcept;
#endif
@@ -634,7 +634,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ std::__valarray_copy_construct(__v._M_data, __v._M_data + _M_size,
_M_data); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp>
inline
valarray<_Tp>::valarray(valarray<_Tp>&& __v) noexcept
@@ -683,7 +683,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
(__ia._M_array, __ia._M_index, _Array<_Tp>(_M_data), _M_size);
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp>
inline
valarray<_Tp>::valarray(initializer_list<_Tp> __l)
@@ -728,7 +728,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp>
inline valarray<_Tp>&
valarray<_Tp>::operator=(valarray<_Tp>&& __v) noexcept
@@ -895,7 +895,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_Array<size_t>(__i));
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class _Tp>
inline void
valarray<_Tp>::swap(valarray<_Tp>& __v) noexcept
@@ -1174,7 +1174,7 @@ _DEFINE_BINARY_OPERATOR(>=, __greater_equal)
#undef _DEFINE_BINARY_OPERATOR
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
/**
* @brief Return an iterator pointing to the first element of
* the valarray.
@@ -1214,7 +1214,7 @@ _DEFINE_BINARY_OPERATOR(>=, __greater_equal)
inline const _Tp*
end(const valarray<_Tp>& __va)
{ return std::__addressof(__va[0]) + __va.size(); }
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
// @} group numeric_arrays
diff --git a/libstdc++-v3/include/tr1/complex b/libstdc++-v3/include/tr1/complex
index 689ea167ba2..948fe72fd62 100644
--- a/libstdc++-v3/include/tr1/complex
+++ b/libstdc++-v3/include/tr1/complex
@@ -45,7 +45,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @{
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
using std::acos;
using std::asin;
using std::atan;
@@ -62,7 +62,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// The std::fabs return type in C++0x mode is different (just _Tp).
template<typename _Tp> std::complex<_Tp> fabs(const std::complex<_Tp>&);
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
template<typename _Tp>
inline std::complex<_Tp>
__complex_acos(const std::complex<_Tp>& __z)
@@ -179,7 +179,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return __complex_atan(__z); }
#endif
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
template<typename _Tp>
std::complex<_Tp>
@@ -309,7 +309,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return std::abs(__z); }
/// Additional overloads [8.1.9].
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
template<typename _Tp>
inline typename __gnu_cxx::__promote<_Tp>::__type
diff --git a/libstdc++-v3/include/tr1/functional b/libstdc++-v3/include/tr1/functional
index d9b7a842bcd..88a81495d87 100644
--- a/libstdc++-v3/include/tr1/functional
+++ b/libstdc++-v3/include/tr1/functional
@@ -42,13 +42,13 @@
#include <tr1/functional_hash.h>
#include <ext/type_traits.h>
#include <bits/move.h> // for std::__addressof
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
# include <type_traits> // for integral_constant, true_type, false_type
#endif
namespace std _GLIBCXX_VISIBILITY(default)
{
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_GLIBCXX_BEGIN_NAMESPACE_VERSION
template<int> struct _Placeholder;
template<typename> class _Bind;
@@ -914,7 +914,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<int _Num>
const int is_placeholder<_Placeholder<_Num> >::value;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<int _Num>
struct is_placeholder<std::_Placeholder<_Num>>
: std::integral_constant<int, _Num>
@@ -1430,7 +1430,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
is_bind_expression<const volatile _Bind_result<_Result,
_Signature> >::value;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Signature>
struct is_bind_expression<std::_Bind<_Signature>>
: true_type { };
@@ -1889,7 +1889,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
: public _Maybe_unary_or_binary_function<_Res, _ArgTypes...>,
private _Function_base
{
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
/// This class is used to implement the safe_bool idiom.
struct _Hidden_type
{
@@ -2042,7 +2042,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
*
* This function will not throw an %exception.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit operator bool() const
{ return !_M_empty(); }
#else
@@ -2252,7 +2252,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_GLIBCXX_END_NAMESPACE_VERSION
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
_GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename> struct is_placeholder;
diff --git a/libstdc++-v3/include/tr1/shared_ptr.h b/libstdc++-v3/include/tr1/shared_ptr.h
index 8f9870deb59..9220e304c61 100644
--- a/libstdc++-v3/include/tr1/shared_ptr.h
+++ b/libstdc++-v3/include/tr1/shared_ptr.h
@@ -584,7 +584,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_M_ptr = __r._M_ptr;
}
-#if !defined(__GXX_EXPERIMENTAL_CXX0X__) || _GLIBCXX_USE_DEPRECATED
+#if (__cplusplus < 201103L) || _GLIBCXX_USE_DEPRECATED
// Postcondition: use_count() == 1 and __r.get() == 0
template<typename _Tp1>
explicit
@@ -630,7 +630,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *this;
}
-#if !defined(__GXX_EXPERIMENTAL_CXX0X__) || _GLIBCXX_USE_DEPRECATED
+#if (__cplusplus < 201103L) || _GLIBCXX_USE_DEPRECATED
template<typename _Tp1>
__shared_ptr&
operator=(std::auto_ptr<_Tp1>& __r)
@@ -1007,7 +1007,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
shared_ptr(const weak_ptr<_Tp1>& __r)
: __shared_ptr<_Tp>(__r) { }
-#if !defined(__GXX_EXPERIMENTAL_CXX0X__) || _GLIBCXX_USE_DEPRECATED
+#if (__cplusplus < 201103L) || _GLIBCXX_USE_DEPRECATED
template<typename _Tp1>
explicit
shared_ptr(std::auto_ptr<_Tp1>& __r)
@@ -1034,7 +1034,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *this;
}
-#if !defined(__GXX_EXPERIMENTAL_CXX0X__) || _GLIBCXX_USE_DEPRECATED
+#if (__cplusplus < 201103L) || _GLIBCXX_USE_DEPRECATED
template<typename _Tp1>
shared_ptr&
operator=(std::auto_ptr<_Tp1>& __r)
diff --git a/libstdc++-v3/libsupc++/atomic_lockfree_defines.h b/libstdc++-v3/libsupc++/atomic_lockfree_defines.h
index 22331b61537..085d80e498f 100644
--- a/libstdc++-v3/libsupc++/atomic_lockfree_defines.h
+++ b/libstdc++-v3/libsupc++/atomic_lockfree_defines.h
@@ -45,7 +45,7 @@
* 2 indicates that the types are always lock-free.
*/
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#define ATOMIC_BOOL_LOCK_FREE __GCC_ATOMIC_BOOL_LOCK_FREE
#define ATOMIC_CHAR_LOCK_FREE __GCC_ATOMIC_CHAR_LOCK_FREE
#define ATOMIC_WCHAR_T_LOCK_FREE __GCC_ATOMIC_WCHAR_T_LOCK_FREE
diff --git a/libstdc++-v3/libsupc++/exception b/libstdc++-v3/libsupc++/exception
index 94a0bcbc662..9763ede76ac 100644
--- a/libstdc++-v3/libsupc++/exception
+++ b/libstdc++-v3/libsupc++/exception
@@ -150,7 +150,7 @@ _GLIBCXX_END_NAMESPACE_VERSION
#pragma GCC visibility pop
-#if defined(__GXX_EXPERIMENTAL_CXX0X__) && (ATOMIC_INT_LOCK_FREE > 1)
+#if (__cplusplus >= 201103L) && (ATOMIC_INT_LOCK_FREE > 1)
#include <bits/exception_ptr.h>
#include <bits/nested_exception.h>
#endif
diff --git a/libstdc++-v3/libsupc++/exception_ptr.h b/libstdc++-v3/libsupc++/exception_ptr.h
index b6fd08e09a8..4310b99b072 100644
--- a/libstdc++-v3/libsupc++/exception_ptr.h
+++ b/libstdc++-v3/libsupc++/exception_ptr.h
@@ -89,7 +89,7 @@ namespace std
exception_ptr(const exception_ptr&) _GLIBCXX_USE_NOEXCEPT;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
exception_ptr(nullptr_t) noexcept
: _M_exception_object(0)
{ }
@@ -99,7 +99,7 @@ namespace std
{ __o._M_exception_object = 0; }
#endif
-#if !defined (__GXX_EXPERIMENTAL_CXX0X__) || defined (_GLIBCXX_EH_PTR_COMPAT)
+#if (__cplusplus < 201103L) || defined (_GLIBCXX_EH_PTR_COMPAT)
typedef void (exception_ptr::*__safe_bool)();
// For construction from nullptr or 0.
@@ -109,7 +109,7 @@ namespace std
exception_ptr&
operator=(const exception_ptr&) _GLIBCXX_USE_NOEXCEPT;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
exception_ptr&
operator=(exception_ptr&& __o) noexcept
{
@@ -132,7 +132,7 @@ namespace std
operator __safe_bool() const _GLIBCXX_USE_NOEXCEPT;
#endif
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
explicit operator bool() const
{ return _M_exception_object; }
#endif
diff --git a/libstdc++-v3/libsupc++/initializer_list b/libstdc++-v3/libsupc++/initializer_list
index 6b991b7d663..5e2a78bb97d 100644
--- a/libstdc++-v3/libsupc++/initializer_list
+++ b/libstdc++-v3/libsupc++/initializer_list
@@ -32,7 +32,7 @@
#pragma GCC system_header
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else // C++0x
@@ -102,6 +102,6 @@ namespace std
#pragma GCC visibility pop
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#endif // _INITIALIZER_LIST
diff --git a/libstdc++-v3/libsupc++/nested_exception.h b/libstdc++-v3/libsupc++/nested_exception.h
index d88f021c5c5..a3dfc95b52a 100644
--- a/libstdc++-v3/libsupc++/nested_exception.h
+++ b/libstdc++-v3/libsupc++/nested_exception.h
@@ -32,7 +32,7 @@
#pragma GCC visibility push(default)
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# include <bits/c++0x_warning.h>
#else
@@ -159,7 +159,7 @@ namespace std
} // extern "C++"
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
#pragma GCC visibility pop
diff --git a/libstdc++-v3/libsupc++/typeinfo b/libstdc++-v3/libsupc++/typeinfo
index bf0935cfb59..4780532b20e 100644
--- a/libstdc++-v3/libsupc++/typeinfo
+++ b/libstdc++-v3/libsupc++/typeinfo
@@ -34,7 +34,7 @@
#pragma GCC system_header
#include <exception>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <bits/hash_bytes.h>
#endif
@@ -138,7 +138,7 @@ namespace std
bool operator!=(const type_info& __arg) const _GLIBCXX_NOEXCEPT
{ return !operator==(__arg); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
size_t hash_code() const noexcept
{
# if !__GXX_MERGED_TYPEINFO_NAMES
@@ -148,7 +148,7 @@ namespace std
return reinterpret_cast<size_t>(__name);
# endif
}
-#endif // __GXX_EXPERIMENTAL_CXX0X__
+#endif // C++11
// Return true if this is a pointer type of some kind
virtual bool __is_pointer_p() const;
diff --git a/libstdc++-v3/src/c++11/compatibility-c++0x.cc b/libstdc++-v3/src/c++11/compatibility-c++0x.cc
index 306bad55faf..157bf021a60 100644
--- a/libstdc++-v3/src/c++11/compatibility-c++0x.cc
+++ b/libstdc++-v3/src/c++11/compatibility-c++0x.cc
@@ -26,7 +26,7 @@
#include <string>
#include <system_error>
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# error "compatibility-c++0x.cc must be compiled with -std=gnu++0x"
#endif
diff --git a/libstdc++-v3/src/c++11/compatibility-thread-c++0x.cc b/libstdc++-v3/src/c++11/compatibility-thread-c++0x.cc
index 5e87b531923..d1d25345238 100644
--- a/libstdc++-v3/src/c++11/compatibility-thread-c++0x.cc
+++ b/libstdc++-v3/src/c++11/compatibility-thread-c++0x.cc
@@ -30,7 +30,7 @@
#include <future>
#include <mutex>
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# error "compatibility-thread-c++0x.cc must be compiled with -std=gnu++0x"
#endif
diff --git a/libstdc++-v3/src/c++11/hash_c++0x.cc b/libstdc++-v3/src/c++11/hash_c++0x.cc
index d685074540b..b8569df5116 100644
--- a/libstdc++-v3/src/c++11/hash_c++0x.cc
+++ b/libstdc++-v3/src/c++11/hash_c++0x.cc
@@ -22,7 +22,7 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# error "hash_c++0x.cc must be compiled with -std=gnu++0x"
#endif
diff --git a/libstdc++-v3/src/c++11/hashtable_c++0x.cc b/libstdc++-v3/src/c++11/hashtable_c++0x.cc
index 2bf55082cd5..33911315f52 100644
--- a/libstdc++-v3/src/c++11/hashtable_c++0x.cc
+++ b/libstdc++-v3/src/c++11/hashtable_c++0x.cc
@@ -24,7 +24,7 @@
#include <bits/c++config.h>
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# error "hashtable_c++0x.cc must be compiled with -std=gnu++0x"
#endif
diff --git a/libstdc++-v3/src/c++11/placeholders.cc b/libstdc++-v3/src/c++11/placeholders.cc
index 967ce178a32..8227c3486e2 100644
--- a/libstdc++-v3/src/c++11/placeholders.cc
+++ b/libstdc++-v3/src/c++11/placeholders.cc
@@ -22,7 +22,7 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// <http://www.gnu.org/licenses/>.
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
# error "placeholders.cc must be compiled with -std=gnu++0x"
#endif
diff --git a/libstdc++-v3/testsuite/18_support/50594.cc b/libstdc++-v3/testsuite/18_support/50594.cc
index 047f4a732bf..04810bdf079 100644
--- a/libstdc++-v3/testsuite/18_support/50594.cc
+++ b/libstdc++-v3/testsuite/18_support/50594.cc
@@ -26,7 +26,7 @@ bool user_new_called;
bool user_delete_called;
void* operator new(std::size_t n)
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
throw(std::bad_alloc)
#endif
{
@@ -41,7 +41,7 @@ void* operator new(std::size_t n)
}
void operator delete(void* p)
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
noexcept
#else
throw()
diff --git a/libstdc++-v3/testsuite/23_containers/bitset/debug/invalidation/1.cc b/libstdc++-v3/testsuite/23_containers/bitset/debug/invalidation/1.cc
index 5959d5fffc5..81d0dcd3231 100644
--- a/libstdc++-v3/testsuite/23_containers/bitset/debug/invalidation/1.cc
+++ b/libstdc++-v3/testsuite/23_containers/bitset/debug/invalidation/1.cc
@@ -34,7 +34,7 @@ void test01()
i = new bitset<32>::reference(bs[7]);
VERIFY(*i);
}
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
VERIFY(i->_M_singular());
#endif
delete i;
diff --git a/libstdc++-v3/testsuite/23_containers/deque/requirements/explicit_instantiation/2.cc b/libstdc++-v3/testsuite/23_containers/deque/requirements/explicit_instantiation/2.cc
index 82efd2605b5..3dd2b6c05c0 100644
--- a/libstdc++-v3/testsuite/23_containers/deque/requirements/explicit_instantiation/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/deque/requirements/explicit_instantiation/2.cc
@@ -25,6 +25,6 @@
// N.B. In C++0x mode we cannot instantiate with T == NonDefaultConstructible
// because of 23.3.2.1.4
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
template class std::deque<__gnu_test::NonDefaultConstructible>;
#endif
diff --git a/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/2.cc b/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/2.cc
index 50ae785600b..e5a095f82bd 100644
--- a/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/list/requirements/explicit_instantiation/2.cc
@@ -25,6 +25,6 @@
// N.B. In C++0x mode we cannot instantiate with T == NonDefaultConstructible
// because of 23.3.4.1.4
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
template class std::list<__gnu_test::NonDefaultConstructible>;
#endif
diff --git a/libstdc++-v3/testsuite/23_containers/map/modifiers/erase/47628.cc b/libstdc++-v3/testsuite/23_containers/map/modifiers/erase/47628.cc
index 6c61b94303c..2df601229a2 100644
--- a/libstdc++-v3/testsuite/23_containers/map/modifiers/erase/47628.cc
+++ b/libstdc++-v3/testsuite/23_containers/map/modifiers/erase/47628.cc
@@ -33,7 +33,7 @@ struct Key
bool operator<(const Key&) const;
};
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
// libstdc++/47628
void f()
{
diff --git a/libstdc++-v3/testsuite/23_containers/multimap/modifiers/erase/47628.cc b/libstdc++-v3/testsuite/23_containers/multimap/modifiers/erase/47628.cc
index c45013a12d5..f8e7512cb8c 100644
--- a/libstdc++-v3/testsuite/23_containers/multimap/modifiers/erase/47628.cc
+++ b/libstdc++-v3/testsuite/23_containers/multimap/modifiers/erase/47628.cc
@@ -33,7 +33,7 @@ struct Key
bool operator<(const Key&) const;
};
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
// libstdc++/47628
void f()
{
diff --git a/libstdc++-v3/testsuite/23_containers/vector/requirements/explicit_instantiation/2.cc b/libstdc++-v3/testsuite/23_containers/vector/requirements/explicit_instantiation/2.cc
index 4ec749b7357..3cb689d30c2 100644
--- a/libstdc++-v3/testsuite/23_containers/vector/requirements/explicit_instantiation/2.cc
+++ b/libstdc++-v3/testsuite/23_containers/vector/requirements/explicit_instantiation/2.cc
@@ -25,6 +25,6 @@
// N.B. In C++0x mode we cannot instantiate with T == NonDefaultConstructible
// because of 23.4.1.1.4
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus < 201103L
template class std::vector<__gnu_test::NonDefaultConstructible>;
#endif
diff --git a/libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/requirements/base_classes.cc b/libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/requirements/base_classes.cc
index ce946f6a419..a9d6c542e5d 100644
--- a/libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/requirements/base_classes.cc
+++ b/libstdc++-v3/testsuite/24_iterators/istreambuf_iterator/requirements/base_classes.cc
@@ -34,7 +34,7 @@ void test01()
typedef char_traits<char>::off_type off_type;
typedef iterator<input_iterator_tag, char, off_type, char*,
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
char>
#else
char&>
diff --git a/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/synopsis.cc b/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/synopsis.cc
index a78da2ecb89..9bd9fb8a71f 100644
--- a/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/synopsis.cc
+++ b/libstdc++-v3/testsuite/25_algorithms/headers/algorithm/synopsis.cc
@@ -34,7 +34,7 @@ namespace std
_IIter
find_if(_IIter, _IIter, _Predicate);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _IIter, typename _Predicate>
bool
all_of(_IIter, _IIter, _Predicate);
@@ -140,7 +140,7 @@ namespace std
void
swap(_Tp&, _Tp& b);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp, size_t _Nm>
void
swap(_Tp (&)[_Nm], _Tp (&)[_Nm]);
@@ -211,7 +211,7 @@ namespace std
_OIter
remove_copy_if(_IIter, _IIter, _OIter, _Predicate);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _IIter, typename _OIter, typename _Predicate>
_OIter
copy_if(_IIter, _IIter, _OIter, _Predicate);
@@ -447,7 +447,7 @@ namespace std
void
sort_heap(_RAIter, _RAIter, _Compare);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _RAIter>
bool
is_heap(_RAIter, _RAIter);
@@ -514,7 +514,7 @@ namespace std
_FIter
max_element(_FIter, _FIter, _Compare);
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp>
pair<const _Tp&, const _Tp&>
minmax(const _Tp&, const _Tp&);
diff --git a/libstdc++-v3/testsuite/util/testsuite_allocator.h b/libstdc++-v3/testsuite/util/testsuite_allocator.h
index c0b8ee3be9b..04ad943a054 100644
--- a/libstdc++-v3/testsuite/util/testsuite_allocator.h
+++ b/libstdc++-v3/testsuite/util/testsuite_allocator.h
@@ -136,7 +136,7 @@ namespace __gnu_test
allocate(size_type n, const void* = 0)
{ return static_cast<pointer>(counter_type::allocate(n * sizeof(T))); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename U, typename... Args>
void
construct(U* p, Args&&... args)
@@ -257,7 +257,7 @@ namespace __gnu_test
typedef const Tp& const_reference;
typedef Tp value_type;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
typedef std::true_type propagate_on_container_swap;
#endif
@@ -330,7 +330,7 @@ namespace __gnu_test
max_size() const _GLIBCXX_USE_NOEXCEPT
{ return size_type(-1) / sizeof(Tp); }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename U, typename... Args>
void
construct(U* p, Args&&... args)
@@ -377,7 +377,7 @@ namespace __gnu_test
int personality;
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// An uneq_allocator which can be used to test allocator propagation.
template<typename Tp, bool Propagate>
class propagating_allocator : public uneq_allocator<Tp>
diff --git a/libstdc++-v3/testsuite/util/testsuite_api.h b/libstdc++-v3/testsuite/util/testsuite_api.h
index 11007904093..3fded1361c6 100644
--- a/libstdc++-v3/testsuite/util/testsuite_api.h
+++ b/libstdc++-v3/testsuite/util/testsuite_api.h
@@ -86,7 +86,7 @@ namespace __gnu_test
NonDefaultConstructible(int) { }
NonDefaultConstructible(const NonDefaultConstructible&) { }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// For std::iota.
NonDefaultConstructible&
operator++()
@@ -174,7 +174,7 @@ namespace __gnu_test
{ return 1; }
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
struct NonCopyConstructible
{
NonCopyConstructible() : num(-1) { }
diff --git a/libstdc++-v3/testsuite/util/testsuite_character.h b/libstdc++-v3/testsuite/util/testsuite_character.h
index ceda1f5125e..d73280a2e2c 100644
--- a/libstdc++-v3/testsuite/util/testsuite_character.h
+++ b/libstdc++-v3/testsuite/util/testsuite_character.h
@@ -37,7 +37,7 @@ namespace __gnu_test
{
int value;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// For std::iota.
pod_int&
operator++()
diff --git a/libstdc++-v3/testsuite/util/testsuite_common_types.h b/libstdc++-v3/testsuite/util/testsuite_common_types.h
index c9be94d8f21..8815bd4df35 100644
--- a/libstdc++-v3/testsuite/util/testsuite_common_types.h
+++ b/libstdc++-v3/testsuite/util/testsuite_common_types.h
@@ -45,7 +45,7 @@
#include <tr1/unordered_map>
#include <tr1/unordered_set>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <atomic>
#include <type_traits>
#endif
@@ -273,7 +273,7 @@ namespace __gnu_test
typedef long long a11;
typedef unsigned long long a12;
typedef wchar_t a13;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
typedef char16_t a14;
typedef char32_t a15;
@@ -301,7 +301,7 @@ namespace __gnu_test
typedef long long a11;
typedef unsigned long long a12;
typedef wchar_t a13;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
typedef char16_t a14;
typedef char32_t a15;
# if !defined(__STRICT_ANSI__) && defined(_GLIBCXX_USE_INT128)
@@ -329,7 +329,7 @@ namespace __gnu_test
#endif
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
struct atomic_integrals_no_bool
{
typedef std::atomic_char a2;
@@ -437,7 +437,7 @@ namespace __gnu_test
}
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<typename _Tp>
void
constexpr_bitwise_operators()
@@ -507,7 +507,7 @@ namespace __gnu_test
}
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
struct constexpr_comparison_eq_ne
{
@@ -682,7 +682,7 @@ namespace __gnu_test
}
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
// Generator to test default constructor.
struct constexpr_default_constructible
{
@@ -777,7 +777,7 @@ namespace __gnu_test
#endif
// Generator to test direct list initialization
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
struct direct_list_initializable
{
template<typename _Ttype, typename _Tvalue>
diff --git a/libstdc++-v3/testsuite/util/testsuite_counter_type.h b/libstdc++-v3/testsuite/util/testsuite_counter_type.h
index 2b7063da170..298fd9ffe6e 100644
--- a/libstdc++-v3/testsuite/util/testsuite_counter_type.h
+++ b/libstdc++-v3/testsuite/util/testsuite_counter_type.h
@@ -32,7 +32,7 @@ namespace __gnu_test
static int copy_count;
static int copy_assign_count;
static int less_compare_count;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
static int move_count;
static int move_assign_count;
#endif
@@ -62,7 +62,7 @@ namespace __gnu_test
return *this;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
counter_type(counter_type&& in) noexcept
{
val = in.val;
@@ -86,7 +86,7 @@ namespace __gnu_test
copy_count = 0;
copy_assign_count = 0;
less_compare_count = 0;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
move_count = 0;
move_assign_count = 0;
#endif
@@ -105,7 +105,7 @@ namespace __gnu_test
int counter_type::copy_assign_count = 0;
int counter_type::less_compare_count = 0;
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
int counter_type::move_count = 0;
int counter_type::move_assign_count = 0;
#endif
diff --git a/libstdc++-v3/testsuite/util/testsuite_iterators.h b/libstdc++-v3/testsuite/util/testsuite_iterators.h
index d815b6c570f..581ce35eab0 100644
--- a/libstdc++-v3/testsuite/util/testsuite_iterators.h
+++ b/libstdc++-v3/testsuite/util/testsuite_iterators.h
@@ -31,7 +31,7 @@
#include <testsuite_hooks.h>
#include <bits/stl_iterator_base_types.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
#include <bits/move.h>
#endif
@@ -91,7 +91,7 @@ namespace __gnu_test
ptr(ptr_in), SharedInfo(SharedInfo_in)
{ }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<class U>
void
operator=(U&& new_val)
diff --git a/libstdc++-v3/testsuite/util/testsuite_tr1.h b/libstdc++-v3/testsuite/util/testsuite_tr1.h
index 083574e27ce..7797cc46b78 100644
--- a/libstdc++-v3/testsuite/util/testsuite_tr1.h
+++ b/libstdc++-v3/testsuite/util/testsuite_tr1.h
@@ -67,7 +67,7 @@ namespace __gnu_test
return ret;
}
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
template<template<typename...> class Property,
typename Type1, typename... Types>
bool
@@ -156,7 +156,7 @@ namespace __gnu_test
ThrowCopyConsClass(const ThrowCopyConsClass&) throw(int);
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
struct ThrowMoveConsClass
{
ThrowMoveConsClass(ThrowMoveConsClass&&) throw(int);
@@ -308,7 +308,7 @@ namespace __gnu_test
int j;
};
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
struct LType // literal type
{
int _M_i;
@@ -403,7 +403,7 @@ namespace __gnu_test
check_ret_type(T)
{ return true; }
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
+#if __cplusplus >= 201103L
namespace construct
{
struct Empty {};
OpenPOWER on IntegriCloud