aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/std/variant
diff options
context:
space:
mode:
Diffstat (limited to 'libstdc++-v3/include/std/variant')
-rw-r--r--libstdc++-v3/include/std/variant12
1 files changed, 11 insertions, 1 deletions
diff --git a/libstdc++-v3/include/std/variant b/libstdc++-v3/include/std/variant
index ac483f3..48baf9a 100644
--- a/libstdc++-v3/include/std/variant
+++ b/libstdc++-v3/include/std/variant
@@ -85,10 +85,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
constexpr size_t variant_npos = -1;
+_GLIBCXX_END_NAMESPACE_VERSION
+
namespace __detail
{
namespace __variant
{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
// Returns the first apparence of _Tp in _Types.
// Returns sizeof...(_Types) if _Tp is not in _Types.
template<typename _Tp, typename... _Types>
@@ -725,9 +728,12 @@ namespace __variant
}
};
+_GLIBCXX_END_NAMESPACE_VERSION
} // namespace __variant
} // namespace __detail
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
template<typename _Tp, typename... _Types>
inline constexpr bool holds_alternative(const variant<_Types...>& __v)
noexcept
@@ -1250,7 +1256,11 @@ namespace __variant
}
template<typename _Vp>
- friend void* __detail::__variant::__get_storage(_Vp&& __v);
+ friend void* __detail::__variant::
+#if _GLIBCXX_INLINE_VERSION
+ __7:: // Required due to PR c++/59256
+#endif
+ __get_storage(_Vp&& __v);
};
// To honor algebraic data type, variant<> should be a bottom type, which