[committed] libstdc++: Remove redundant dependencies on _GLIBCXX_USE_C99_STDINT_TR1
Checks
Commit Message
Tested powerpc64le-linux. Pushed to trunk.
-- >8 --
We never need to use std::make_unsigned in std::char_traits<char16_t>
and std::char_traits<char32_t> because <cstdint> guarantees to provide
the types we need, since r9-2028-g8ba7f29e3dd064.
Similarly, experimental::source_location can just assume uint_least32_t
is defined by <cstdint>.
libstdc++-v3/ChangeLog:
* include/bits/char_traits.h (char_traits<char16_t>): Do not
depend on _GLIBCXX_USE_C99_STDINT_TR1.
(char_traits<char32_t>): Likewise.
* include/experimental/source_location: Likewise.
---
libstdc++-v3/include/bits/char_traits.h | 8 ++------
libstdc++-v3/include/experimental/source_location | 6 ------
2 files changed, 2 insertions(+), 12 deletions(-)
@@ -762,10 +762,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typedef char16_t char_type;
#ifdef __UINT_LEAST16_TYPE__
typedef __UINT_LEAST16_TYPE__ int_type;
-#elif defined _GLIBCXX_USE_C99_STDINT_TR1
- typedef uint_least16_t int_type;
#else
- typedef make_unsigned<char16_t>::type int_type;
+ typedef uint_least16_t int_type;
#endif
#if _GLIBCXX_HOSTED
typedef streamoff off_type;
@@ -891,10 +889,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typedef char32_t char_type;
#ifdef __UINT_LEAST32_TYPE__
typedef __UINT_LEAST32_TYPE__ int_type;
-#elif defined _GLIBCXX_USE_C99_STDINT_TR1
- typedef uint_least32_t int_type;
#else
- typedef make_unsigned<char32_t>::type int_type;
+ typedef uint_least32_t int_type;
#endif
#if _GLIBCXX_HOSTED
typedef streamoff off_type;
@@ -44,12 +44,6 @@ inline namespace fundamentals_v2 {
struct source_location
{
-#ifndef _GLIBCXX_USE_C99_STDINT_TR1
- private:
- using uint_least32_t = unsigned;
- public:
-#endif
-
// 14.1.2, source_location creation
static constexpr source_location
current(const char* __file = __builtin_FILE(),